Javascript:是否有一种方法可以检测用户滚动,但不能通过代码进行滚动(如scrollLeft等)?

Javascript:是否有一种方法可以检测用户滚动,但不能通过代码进行滚动(如scrollLeft等)?,javascript,scroll,Javascript,Scroll,所以。我正在用按钮制作一个页面;单击按钮可以将页面(实际上是一个容器)平滑地滚动到更右侧的定位点。这是通过容器完成的。向左滚动 现在,我试图让它,当用户手动滚动(滚动条,鼠标滚轮,箭头键等),自动平滑滚动立即停止 我曾尝试使用container.addEventListener('scroll',StopScroll,false)执行此操作但这会激发任何滚动,即使是通过代码完成,而不仅仅是由用户完成。 有没有办法只检测用户滚动?或者找个工作 另外,我不想使用Jquery,但如果这是唯一的方法,我

所以。我正在用按钮制作一个页面;单击按钮可以将页面(实际上是一个容器)平滑地滚动到更右侧的定位点。这是通过
容器完成的。向左滚动

现在,我试图让它,当用户手动滚动(滚动条,鼠标滚轮,箭头键等),自动平滑滚动立即停止

我曾尝试使用
container.addEventListener('scroll',StopScroll,false)执行此操作但这会激发任何滚动,即使是通过代码完成,而不仅仅是由用户完成。
有没有办法只检测用户滚动?或者找个工作


另外,我不想使用Jquery,但如果这是唯一的方法,我会切换到它。

我感觉DOM滚动和事件滚动是以相同的方式管理的,因此无法区分

但是,您可能会挂接到mousedown/keydown,并在按住某个键或鼠标按钮时更新某个变量,并且仅在设置该变量时执行scrollStop