我有一个水平滚动的网站。我正在使用 mousewheel.js 使用鼠标滚轮(或上下)水平滚动。我正在使用CSS Tricks中的一个片段,如下所示:
$("body").mousewheel(function(event, delta) {
this.scrollLeft -= (delta * 5);
event.preventDefault();
});
当我向下滚动时,浏览器将其解释为向右滚动。这很好用。
我需要能够暂时禁用此行为。例如,我有一个面板,它用画廊覆盖网站。当该面板打开时,我想像这样禁用滚动:
$("a.gal").on("click", function(){
$("#galPanel").addClass("open");
$("body").mousewheel(function(event, delta) {
event.preventDefault();
});
});
当我们退出面板时,我想重新启动鼠标滚轮插件。
知道我怎么能做到这一点吗?
更新:我找到了一个可行的解决方案,但不确定这是否是最好的解决方法:
$("#galPanel").bind("mousewheel", function() {
return false;
});