微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

$(窗口)上的jQuery bind/unbind’scroll’事件

我有这个功能
function block_scroll(key){
    if (key) {
        $(window).bind("scroll",function(){
            $('html,body').animate({scrollTop:0},'fast');
        });
    } else {
        $(window).unbind();
    }
}

第一部分工作原理,但是当我后来调用block_scroll(false) – 它仍然阻塞。 Wat做什么?

重新编辑
所以我建议我试过…

$(window).unbind("scroll");

…有一些混乱。起初它没有工作 – 然后它工作。

现在我认为它失败,因为我滚动的时刻block_scroll(false)被调用的时刻。我已经测试了好几次了。是的,如果我在脚本运行时不做任何事情,并且调用block_scroll(false) – 它会工作。但它不会,如果我滚动时,它的调用

解决方法

$(window).unbind('scroll');

即使documentation说,如果调用没有参数,它将删除所有事件处理程序,值得给一个尝试显式解除绑定。

更新

如果你使用单引号,它工作?这听起来不正确 – 据我所知,JavaScript处理单引号和双引号是一样的(不像其他一些语言,如PHP和C)。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐