我试图防止页面元素捕获鼠标滚轮事件以导致滚动。
我期望false
作为最后一个参数来获得预期的结果,但是在这个“canvas”元素上使用鼠标滚轮仍然会导致滚动:
this.canvas.addEventListener('mousewheel', function(event) {
mouseController.wheel(event);
}, false);
在这个“canvas”元素之外,需要发生滚动。在内部,它必须只触发.wheel()
方法。
我究竟做错了什么?
您可以通过返回来做到这一点false
在你的处理程序(OG)的末尾。
this.canvas.addEventListener('wheel',function(event){
mouseController.wheel(event);
return false;
}, false);
或者使用event.preventDefault()
this.canvas.addEventListener('wheel',function(event){
mouseController.wheel(event);
event.preventDefault();
}, false);
更新为使用wheel
事件作为mousewheel
正如评论中指出的,现代浏览器已弃用。
问题是关于防止滚动不提供正确的事件,因此请检查您的浏览器支持要求以选择适合您需求的正确事件。
使用更现代的方法选项进行了第二次更新。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)