Javascript &引用;卷轴;事件侦听器不工作

Javascript &引用;卷轴;事件侦听器不工作,javascript,html,events,javascript-events,event-handling,Javascript,Html,Events,Javascript Events,Event Handling,我目前正在开发一个vanilla JS插件,我需要在scroll上更新一个值,所以我在文档中附加了一个事件侦听器来触发一个函数,该函数应该更新前面提到的值 问题是,它可以在文档加载时工作,但不能在滚动时工作。这就好像滚动事件根本不起作用 目前,我的JS部件如下所示: var currentPosition = 0; var updatePosition = function() { currentPosition = document.body.scrollTop; document.

我目前正在开发一个vanilla JS插件,我需要在scroll上更新一个值,所以我在文档中附加了一个事件侦听器来触发一个函数,该函数应该更新前面提到的值

问题是,它可以在文档加载时工作,但不能在滚动时工作。这就好像滚动事件根本不起作用

目前,我的JS部件如下所示:

var currentPosition = 0;

var updatePosition = function() {
  currentPosition = document.body.scrollTop;
  document.getElementById('indicator').textContent = currentPosition;
};

document.addEventListener('scroll', updatePosition());
这里有一把小提琴让它更清晰一点:

我尝试在主体和窗口上都附加事件侦听器,这没有任何区别

var currentPosition = 0;

var updatePosition = function() {
  currentPosition = window.pageYOffset || document.documentElement.scrollTop;      
  document.getElementById('indicator').textContent = currentPosition;    
};

document.addEventListener('scroll', updatePosition);

您正在使用
updatePosition()
直接调用函数,这是因为您在页面开始时启动函数,因此必须仅使用函数名
updatePosition
附加和处理程序

代码:


演示:

非常感谢。正确,简洁!
document.addEventListener('scroll', updatePosition);
                                                  |-- no () here