Javascript 一个接一个的jQuery滚动加载程序在WebKit中运行

Javascript 一个接一个的jQuery滚动加载程序在WebKit中运行,javascript,jquery,ajax,firefox,webkit,Javascript,Jquery,Ajax,Firefox,Webkit,我一直在做一个小实验,当你滚动时,新条目被加载到页面上 现在,如果你看看这个Firefox,一切正常。当您滚动到页面底部时,条目开始加载,但只能逐个加载。在WebKit中查看它,它将立即开始加载所有条目,直到加载所有可用条目后才会停止 以下是我的完整javascript,由jQuery提供: $(document).ready(function(){ var loadedNum = 1; var loadInterval = 10; function loadMoreI

我一直在做一个小实验,当你滚动时,新条目被加载到页面上

现在,如果你看看这个Firefox,一切正常。当您滚动到页面底部时,条目开始加载,但只能逐个加载。在WebKit中查看它,它将立即开始加载所有条目,直到加载所有可用条目后才会停止

以下是我的完整javascript,由jQuery提供:

$(document).ready(function(){
    var loadedNum = 1;
    var loadInterval = 10;
    function loadMoreItems(){
        for(i=loadedNum; i<loadedNum+loadInterval; i++){
            $.get("ajax.html", function(data){
                $("#loader").append($("li:nth-child("+loadedNum+")",data));
                loadedNum++;
            });
        }
    }
    loadMoreItems();
    $(this).scroll( function(){
        var positionNum = $(this).scrollTop();
        var heightNum = $("#container").height();
        var topNum = $("#loader").position();
        var windowNum = $(window).height();

        var totalHeight = topNum.top+heightNum;
        var totalScrolled = positionNum+windowNum;

        if(totalHeight-totalScrolled<100){
            $.get("ajax.html", function(data){
                $("#loader").append($("li:nth-child("+loadedNum+")",data));
                loadedNum++;
            }); 
        }
        $("#position").css("top",totalScrolled-20);
        $("#position").text("total left is "+(totalHeight-totalScrolled)+"px");
    });
});
$(文档).ready(函数(){
var loadedNum=1;
var-loadInterval=10;
函数loadMoreItems(){

对于(i=loadedNum;i它在Safari中对我有效(但没有WebKit浏览器,因此无法在那里测试),但我认为问题在于,滚动总剩余量会被计算为太小。

Safari是一款WebKit浏览器。最著名的两款WebKit浏览器是Safari和Chrome,这两款浏览器似乎都有相同的问题。对于Safari,如果滚动到大约100像素,它应该只会添加一款。然而,它倾向于添加由于某种原因不止一个。我想知道是否有其他方法代替检查剩下多少。