“onwheel”和“onwheel”有什么区别?和“;onscroll"事件
What's the difference between "onwheel" and "onscroll" events?
当我试图改变默认滚动条属性时,我发现通过为scroll()
或onscroll
事件重写回调函数并不方便,相反,我应该为"onwheel"事件重写回调函数。
那么onwheel
和onscroll
到底有什么区别呢?我认为浏览器默认的onwheel
处理程序会自动触发onscroll
函数来移动滚动条,这就是为什么onwheel
回调中的preventDefault
会阻止滚动条移动。我说的对吗?谁有更好更具体的解释?
onwheel
特别是在鼠标滚轮旋转时触发。onscroll
触发任何类型的滚动,包括键盘按钮,如箭头键,Home, End, Page Up, Page Down,空格键,tab等。
请注意,onwheel
是非标准的,应该避免使用,除非您专门针对支持它的浏览器和/或提供不会感觉到的额外功能。
onwheel
:当鼠标滚轮在元素上上下滚动时发生。
onscroll
在滚动元素的滚动条时发生。
值得注意的是,在Internet Explorer中,wheel事件仅通过addEventListener
支持。你不能使用onwheel
事件属性。
onwheel在Safari或IE8或更早版本中不工作
当你移动鼠标滚轮时,onwheel
事件在滚动和缩放时触发,而onscroll
事件仅在元素的滚动条被滚动时发生(我相信也包括触摸滚动)
MDN about onwheel
:
非标准
此功能是非标准的,并且不在标准轨道上。不要在面向Web的生产站点上使用它:它并不适用于每个用户。实现之间也可能存在很大的不兼容性,并且行为可能在将来发生变化。
滚动鼠标滚轮时触发onwheel
事件。这个物理动作可能会也可能不会导致滚动事件。
基本上,onscroll
就是你需要的。
- 分派点击事件并保留击键修饰符
- 模糊事件的Javascript测试
- keyup事件处理程序更改焦点不适用于快速键入
- 使用 jQuery 的 .on 函数如何获取事件的原始元素
- 如何使Javascript动态html表及其上的事件
- 使用类从一个标记中双击事件
- 如何在未直接触发的情况下停止事件
- 如何在elfinder插件(一个文件管理器插件)上获得上传前事件
- 对iPad上的点击事件反应缓慢
- 事件和状态
- Fancybox是否将Click事件静音
- 主干-不管怎样,检查事件以前是否绑定过
- 从控制器返回后Ajax启动事件激发
- 如何从画布上的某个移动事件中获取X和Y
- Jquery:未触发select事件
- JsFiddle上的鼠标事件不起作用
- 只覆盖箭头键滚动事件
- $window.ga在AngularJS事件中未定义
- 当我禁用window.onwheel事件时,它会使Firefox中的所有object.onwheele事件也被禁用
- “onwheel”和“onwheel”有什么区别?和“;onscroll"事件