我有一个滚动条,必须遵循一些时间轴。它会使用.scrollLeft
不断滚动setInterval
。
我仍然希望用户能够自然地控制并只是拖动滚动条。如果我能检测到用户这样做了,我会关闭setInterval
计时器并将控件留给用户,直到他明确地重新打开自动滚动。
有没有办法区分用户滚动事件和.scrollLeft
创建的滚动?
答案 0 :(得分:3)
您可以在更改scrollLeft
之前设置标记并在之后将其清除,然后检查scroll
事件中的标记。
由于Javascript在UI线程上运行,因此用户无法在代码运行时滚动。
答案 1 :(得分:0)
另一种方法是放弃使用滚动条,然后使用CSS和jQuery slider control来完成。这也使您可以选择使其看起来更像时间线。您可以将滚动条元素设置为您想要的任何CSS。
有一些,但是使用jQuery draggable control并将一个轴限制在一个长而窄的容器DIV中并不是很难自己滚动。