我希望有一个干净漂亮的JavaScript鼠标滚轮事件,仅支持最新版本的常见浏览器,不需要为过时版本编写遗留代码,也不需要任何JS框架。
鼠标滚轮事件在 这里 得到了很好的解释。如何简化它以适应当前最新版本的浏览器?
我无法测试所有浏览器,所以 caniuse.com 对我来说是个很好的帮助。可惜的是,鼠标滚轮事件在那里没有提到。
基于 Derek 的评论,我写了这个解决方案。这对所有浏览器都有效吗?
someObject.addEventListener("onwheel" in document ? "wheel" : "mousewheel", function(e) {
e.wheel = e.deltaY ? -e.deltaY : e.wheelDelta/40;
// custom code
});
MouseWheelEvent
,而Firefox支持WheelEvent
。要跨浏览器监听,请参见这里。 - Derek 朕會功夫