我想捕捉onMouseWheel
整个页面的事件(对于我正在进行自定义滚动的上下文),但也需要停止页面上处理它的所有其他内容。怎么可能做到这一点?
提前致谢。
你应该打电话
event.preventDefault();
处理完事件后。
像这样:
window.addEventListener("onMouseWheel", function(event) {
// process the event for custom scrolling
event.preventDefault();
event.stopPropagation();
}, true);
您可以像这样在 jquery 中执行此操作:
$(function(){
$('*:not(body)').on('mousewheel',function(e){
e.preventDefault();
e.stopPropagation();
});
});
使用纯 javascript 的替代解决方案:
var ele = document.querySelectorAll('*:not(body)');
ele.forEach(function(i){
ele[i].addEventListener('mousewheel',function(e){
e.preventDefault();
e.stopPropagation();
},false);
});