gpt4 book ai didi

jquery - 使用 mousewheel.js 暂时禁用滚动

转载 作者:行者123 更新时间:2023-12-01 04:13:01 25 4
gpt4 key购买 nike

我有一个水平滚动的网站。我使用 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;
});

最佳答案

由于您已经使用了 .on(),因此请使用 .on().off() 用于鼠标滚轮事件。

$("body").on('mousewheel', function(){
// ToDos
});

$("a.gal").on("click", function(){
$("#galPanel").addClass("open");
$("body").off('mousewheel', false);
});

我不知道如何让它在你的代码中工作。但这很简单,就像开关(开和关)。

关于jquery - 使用 mousewheel.js 暂时禁用滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17998932/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com