Javascript 关闭滚动侦听器
我初始化无限滚动,然后在滚动时调用loadMore,在这个函数中,我尝试关闭无限滚动,但没有效果-我哪里出错了?您需要保留“绑定”函数的引用Javascript 关闭滚动侦听器,javascript,jquery,Javascript,Jquery,我初始化无限滚动,然后在滚动时调用loadMore,在这个函数中,我尝试关闭无限滚动,但没有效果-我哪里出错了?您需要保留“绑定”函数的引用 为什么我需要为它创建一个var,为什么我不能只引用方法本身? p.initInfiniteScroll = function(){ $(window).on('scroll', this.infiniteScroll.bind(this)); }; p.terminateInfiniteScroll = function(){ $(win
为什么我需要为它创建一个var,为什么我不能只引用方法本身?
p.initInfiniteScroll = function(){
$(window).on('scroll', this.infiniteScroll.bind(this));
};
p.terminateInfiniteScroll = function(){
$(window).off('scroll', this.infiniteScroll);
};
p.infiniteScroll = function(){
if($(window).scrollTop() == $(document).height() - $(window).height()){
this.loadMore();
}
};
p.loadMore = function(){
console.log('load more');
this.terminateInfiniteScroll();
};
var myFunc = this.infiniteScroll.bind(this);
p.initInfiniteScroll = function(){
$(window).on('scroll', myFunc);
};
p.terminateInfiniteScroll = function(){
$(window).off('scroll', myFunc);
};