JavaScript检测鼠标滚轮事件的麻烦
作者:互联网
我正在尝试捕获鼠标事件.这是我正在尝试的代码:
if(window.addEventListener) { document.addEventListener('DOMMouseScroll', zoom_handler, false); }
else { document.onmousewheel = zoom_handler; }
alert("test"); //I see this alert so I assume the code above it is run
// …
function zoom_handler(event) {
var delta = 0;
if (!event) event = window.event;
// normalize the delta
if (event.wheelDelta) {
// IE and Opera
delta = event.wheelDelta / 60;
} else if (event.detail) {
// W3C
delta = -event.detail / 2;
}
alert("Delta: " + delta);
}
除了问题是当我尝试在我的页面上上下翻转时我什么都看不见,所以我想我没有正确地捕捉事件.作为参考,我一直在尝试按照本教程:http://viralpatel.net/blogs/2009/08/javascript-mouse-scroll-event-down-example.html
谢谢你的帮助.
解决方法:
我想你实现它的方式只能在某些浏览器中运行,而不是在Chrome中运行.你有没有尝试过
document.onmousewheel = zoom_handler;
在else语句之外?
这样做,使其在我在OSX Lion(Mac)上运行的Chrome浏览器上运行.
这是我在计算机上测试的方式:
if(window.addEventListener) { document.addEventListener('DOMMouseScroll', zoom_handler, false); }
document.onmousewheel = zoom_handler;
alert("test"); //I see this alert so I assume the code above it is run
希望能解决它.
标签:javascript,events,mouse,mousewheel 来源: https://codeday.me/bug/20190626/1290307.html