【发布时间】:2017-11-10 10:55:27
【问题描述】:
我有一些 jQuery 代码来检查我是否已经滚动到窗口底部。
$(window).scroll(function(){
if($(window).scrollTop() + $(window).height() == $(document).height()) {
appendToGrid();
}
})
我的 appendToGrid() 函数将用户滚动到页面顶部并添加内容。问题是,我需要每个滚动调用一次这个函数。正如我现在所拥有的,每次滚动都会多次调用它。
如果我把它改成
$(window).one('scroll',function() {
if($(window).scrollTop() + $(window).height() == $(document).height()) {
appendToGrid();
}
});
它总共只会触发一次,但我需要它在每次滚动时触发一次,以便用户可以滚动到底部并继续返回页面顶部。
我也尝试了以下方法,但它仍然会触发多次。
var fired = false;
$(window).scroll(function(){
if($(window).scrollTop() + $(window).height() == $(document).height() && !fired) {
fired = true;
appendToGrid();
fired = false;
}
})
【问题讨论】:
标签: javascript jquery scroll