暂时禁用鼠标滚轮,直到动画结束

Temporarily disable mousewheel until animation over

本文关键字:动画 结束 鼠标      更新时间:2023-09-26

我正在开发一个有启动页面的网站,我希望它能够工作,以便当您向下滚动启动页面时,div.splash 将向上滚动并滚动网站。我让它大部分工作,只有一个小烦恼。根据您滚动鼠标的速度,它会滚动一定距离进入主站点。

我希望它能够工作,以便一旦它检测到鼠标滚轮上的一次单击,它就会执行下面的所有操作,但鼠标滚轮中的任何额外移动都将被禁用,直到 slideUp()/animate() 功能完成。这样,当他们滚动时,动画就会发生,但这个人仍然会从页面的最顶部开始。

$(window).bind('mousewheel', function(e, delta) {
if(delta == -1){    
    disable_scroll();       
    $('.alpha.wrapper').show();
    $('.titles .beta').hide();
    $('.splash').slideUp(800);
    $('.titles').animate({
        top: '495px'
    },800,enable_scroll());
}
});

通过将disable_scroll();调用移动到文档就绪,您将能够在页面加载后立即禁止用户滚动。

然后,将上述内容更改为:

$(window).bind('mousewheel', function(e, delta) {
if(delta == -1){    
    $('.alpha.wrapper').show();
    $('.titles .beta').hide();
    $('.splash').slideUp(800);
    $('.titles').animate({
        top: '495px'
    },800,function(){enable_scroll();});