我尝试做的是在运行一次之后取消绑定特定功能。在下面的代码中,它是窗口滚动。
$(window).scroll(function(){
if($(window).scrollTop() == viewportheight ){
$("#landing_page").fadeOut(function() { $(window).scrollTop(0); $(window).unbind("scroll");});
}
});
基本上,当#div淡出时,我希望它能够滚动(0)。滚动顶部后,我需要整个功能解除绑定。
有没有办法给这个函数一个特定的名字,然后回调那个名字?因为此代码有效,所以只删除所有滚动功能。 (我不想要的话)我在想这样的事情:
$(window).scroll(function(FUNCTION NAME HERE){
if($(window).scrollTop() == viewportheight ){
$("#landing_page").fadeOut(function() { $(window).scrollTop(0); $(window).unbind("FUNCTION NAME HERE");});
}
});
答案 0 :(得分:25)
$(window).bind("scroll.myScroll", function(){
// stuff
})
现在,取消绑定滚动 - 我有一个唯一的标识符,以防你有其他窗口滚动事件,你不想搞砸。
$(window).unbind('.myScroll');
答案 1 :(得分:0)
您可以使用 jquery.unbind 函数取消绑定元素的任何特定事件