drupal-package / mousewheel
允许克隆jquery/jquery-mousewheel仓库
This package is not auto-updated.
Last update: 2024-09-28 10:56:34 UTC
README
A jQuery 插件,添加了跨浏览器的鼠标滚轮支持以及delta规范化。
为了使用该插件,只需将 mousewheel
事件绑定到元素上。
它还提供了两个辅助方法,分别称为 mousewheel
和 unmousewheel
,它们的行为类似于jQuery中的其他事件辅助方法。
事件对象会更新为规范化的 deltaX
和 deltaY
属性。此外,事件对象上还有一个新的属性,称为 deltaFactor
。将 deltaFactor
与 deltaX
或 deltaY
相乘,即可获取浏览器报告的滚动距离。
以下是一个使用绑定和辅助方法语法的示例
// using on $('#my_elem').on('mousewheel', function(event) { console.log(event.deltaX, event.deltaY, event.deltaFactor); }); // using the event helper $('#my_elem').mousewheel(function(event) { console.log(event.deltaX, event.deltaY, event.deltaFactor); });
将三个参数(delta
、deltaX
和 deltaY
)添加到事件处理器的旧行为现在已弃用,并将在未来版本中删除。
Delta...
浏览器、操作系统和设备的组合提供了大量可能的delta值。实际上,如果用户先使用触摸板,然后使用物理鼠标滚轮,delta值可能会有很大的差异。此插件规范这些值,以便您得到一个从+-1开始的整数,根据使用的力量或加速度以+-1的增量增加。这个数字可能取决于设备而达到数千。请查看从用户那里收集的一些数据这里。
获取滚动距离
在某些用例中,我们更希望有规范化的delta,而在其他用例中,我们希望知道根据用户输入浏览器应滚动多远。这可以通过将 deltaFactor
与 deltaX
或 deltaY
事件属性相乘来完成,以找到浏览器报告的滚动距离。
在3.1.5中向事件对象添加了 deltaFactor
属性,以便可以提取实际报告的delta值。这是一个非标准属性。
构建仓库中的代码
$ git clone git@github.com:jquery/jquery-mousewheel.git
$ cd jquery-mousewheel/
$ npm install
$ npm run build
$ npm run karma
由karma运行的单元测试是非常基本的健全性检查;欢迎改进。要全面测试插件,请在每个支持的浏览器中加载test/index.html,并在单元测试完成后遵循文件顶部后的说明。