我有 2 个按钮:“disable_scroll”和“enable_scroll”用于启用/禁用鼠标滚动。 禁用滚动效果很好:
var cancelscroll = function(e) {
e.preventDefault();
};
$("#disable_scroll").on("click", function () {
if ("onmousewheel" in document) { // for browser except FF
document.onmousewheel = cancelscroll;
} else { // for FF
document.addEventListener('DOMMouseScroll', cancelscroll);
}
});
但是当我想启用鼠标滚动时,我在 Firefox 中遇到了问题。在 Firefox 中,鼠标滚动不会打开(在其他浏览器中,此代码运行良好)。请问谁能帮忙找出错误所在吗?
$("#enable_scroll").on("click", function () {
if ("onmousewheel" in document) { // for brouzers except FF
document.onmousewheel = function(e){};
} else { // for FF
document.addEventListener('DOMMouseScroll', function(e){});
}
});
最佳答案
这在任何地方都有效:https://github.com/brandonaaron/jquery-mousewheel/blob/master/jquery.mousewheel.js
你可以像这样使用它:
$('#test3')
.hover(function() { log('#test3: mouseover'); }, function() { log('#test3: mouseout'); })
.mousewheel(function(event, delta, deltaX, deltaY) {
log('#test3: I should not have been logged');
})
.unmousewheel();
关于javascript - 跨浏览器启用/禁用鼠标滚轮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11330023/