我在其他项目中使用此代码,它工作正常。我不知道我的代码有什么问题。它适用于Chrome,但不适用于Firefox。
这是我的代码:
$('body').on({
'mousewheel': function(e) {
e.preventDefault();
e.stopPropagation();
}
});
body {
height: 5000px;
}
<script src="//code.jquery.com/jquery-1.11.3.min.js"></script>
示例jsFiddle。
我项目中的jQuery版本是1.11.3。
答案 0 :(得分:3)
你可以采用CSS方法:
body {
max-height: 100%;
overflow: hidden;
}
或者这就是我在Firefox中的工作:
document.addEventListener('DOMMouseScroll', function(e){
e.stopPropagation();
e.preventDefault();
e.cancelBubble = false;
return false;
}, false);
你可以在这里看到我的例子: https://jsfiddle.net/qn75a76q/1/
答案 1 :(得分:3)
有些浏览器默认情况下“滚动溢出”不在主体上。 Instand它在html或文档上。例如,请尝试$('html')
或$(document)
。这可能会有所帮助
答案 2 :(得分:2)
我从另一个答案中引用了这个:
Firefox无法识别&#34; mousewheel&#34;从版本3开始。你应该使用 &#34; DOMMouseScroll&#34;而不是火狐。
检查一下:http://www.javascriptkit.com/javatutors/onmousewheel.shtml