【问题标题】:Touchpad scroll detection in JS, no libraryJS中的触摸板滚动检测,没有库
【发布时间】:2013-11-20 20:03:37
【问题描述】:

我正在制作我自己的小型 Javascript 库,它可以轻松地将您网站(和我的)的默认滚动条替换为自定义滚动条。其中一部分意味着给 BODY 元素一个“overflow:hidden”样式来隐藏正常的滚动条。但是,这会阻止所有滚动,除了在代码中完成的滚动。

在显示栏和单击/拖动它时让它滚动方面,我已经完成了所有工作。但是,许多触摸板(例如我正在测试的计算机上)都有一个功能,您可以通过在触摸板右侧滑动手指来滚动。我需要图书馆不要破坏它,所以我需要一些方法来检测用户何时尝试以这种方式滚动。

我认为它会被浏览器解释为鼠标滚轮,所以我设置了一个 onmousewheel 事件,但这似乎根本没有捕捉到它。作为记录,我正在使用 Firefox 25.0.1 进行测试。

有什么方法可以捕获 trackpack 滚动,最好没有外部库?我试图保持它尽可能独立和轻量,但如果我绝对需要,我想我可以使用 jQuery 及其鼠标滚轮扩展......

【问题讨论】:

  • 你用什么浏览器测试?一些浏览器使用onwheel 事件而不是onmousewheel
  • 正如我所说,我正在使用 Firefox 25.0.1 进行测试。我还没有听说过 onwheel...我会在稍后访问我的文件后立即尝试。谢谢。
  • 成功了!但除非我遗漏了什么,因为你的评论是作为答案发布的,我不能 +1/接受它......但是谢谢!
  • 好的,我把它作为答案发布了。

标签: javascript html css scroll


【解决方案1】:

某些浏览器使用onwheel 事件而不是onmousewheel。因此,监听这两个事件通常是个好主意。

有关onwheel 的更多信息,请参阅此MDN article

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-04-23
    • 1970-01-01
    • 2016-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多