我正在使用这个小脚本来定义用户是否滚动到底部
$(window).scroll(function(){
if($(window).scrollTop() == $(document).height() - $(window).height()){
if(!taskFired){
taskFired = true;
$("#loading_gif").css("display", "block");
setTimeout(loadMoreMabs, 1500);
}
}
});
但我不想在到达底部之前触发函数loadMoreMabs 。我该怎么办?我已经尝试过+和 - 高度,但这就像我正在尝试一些我没有真正得到的东西。
答案 0 :(得分:8)
您的问题标题表明您想要什么
从$(document).height()
减去50之类的值,开始从底部加载50个像素。
if($(window).scrollTop() <= ($(document).height() - 50) - $(window).height()){
这是jsfiddle中的一个小演示,我做了一个虚拟函数来实现loadMoreMabs函数
http://jsfiddle.net/sg3s/UwXaw/
每次靠近底部时触发,1500ms到期。
现在只有当它到达最底层时才能点燃(立即)。
(因为它实际上暗示了别的东西)
http://jsfiddle.net/sg3s/UwXaw/1/
诀窍可能是等式中的>=
,如果scrollTop与文档相同或高于窗口高度,则确保触发...