无限滚动实现

时间:2013-08-01 06:44:03

标签: javascript jquery

我试图在onscroll上进行延迟加载。以下是代码:

$(window).scroll(   
            function() {


                if ($(window).scrollTop() > ($(document).height() - $(window).height() - 200) && !loadNews))

                {
                        loadNews = true;
                        loadMoreNewsItems();

                }
            }); 

LoadMoreNewsItems()执行AJAX调用并附加数据,在AJAX调用成功后再次将loadNews标志设置为false。

以上实施是否正确。由于新网站下方的页脚块可用,我减去了200。

当我们检查时,有时用户必须滚动直到页脚才能加载更多新站点。我在移动设备上检查这个。这可能是什么问题。

而且,有时当我们快速滚动时,会有多个AJAX请求。但是,我已经添加了loadNews标志以避免这种情况。但是,它也不起作用。

请帮忙。

1 个答案:

答案 0 :(得分:0)

这是我用来做无限滚动的内容

var d=document;
var remainingHeight=d.scrollHeight - d.clientHeight - (d.scrollTop || document.body.scrollTop);

if(remainingHeight < 500){
     //do the loading process
}

你应该试一试,而不是当前的测试,它应该解决你的手机问题。

此外,关于多个ajax请求和你的标志,问题是&amp;&amp; !loadNews未正确放置在您的测试中,它位于错误的括号中。