我有这种类型的问题。
我有一个滚动事件,它检查我是否已到达页面的末尾,然后从服务器获取数据并且该部分正常工作。
我遇到的问题是,在旧计算机上,我遇到了滚动事件发生时加载双项的问题。
我可以做些什么来使这段代码正常工作,因为它在更快的计算机上正常工作......
我尝试delay()
滚动事件中的代码,同样的事情正在发生......
代码:
$(window).scroll(function()
{
if($(window).scrollTop() + $(window).height() == $(document).height())
{
$(".loader").show().delay(700).fadeOut();
$.ajax({ ///more code });
}
});
答案 0 :(得分:1)
var loading = false;
$(window).scroll(function()
{
if($(window).scrollTop() + $(window).height() == $(document).height())
{
if(!loading){
loading = true;
$(".loader").show().delay(700).fadeOut();
$.ajax({ ///more code })
.done(function(){
loading = false;
});
}
}
});
答案 1 :(得分:0)
你不应该使用它:
if($(window).scrollTop() + $(window).height() == $(document).height())
但是这个:
if($(window).scrollTop() + $(window).height() > $(document).height())
使用var作为状态并检查它