无限滚动重复相同的id

时间:2014-05-27 18:48:26

标签: javascript jquery ajax

以下是我用于按照< li .post-list的最后一个id,但我仍然重复之前拉过的相同id。请告诉我如何解决此问题,以便旧的ID不会再次加载/重复。:

enter image description here

function loadData() 
{ 
    $('div.postloader').html('<img src="img/loader.gif">');
    $.post("getData.php?lastID=" + $(".post-list:last").attr("id"),     
    function(data){
        if (data != "") {
        $(".post-list:last").after(data);            
        }
        $('div.postloader').empty();
    });
}; 

2 个答案:

答案 0 :(得分:0)

防止这种情况的一种可能的解决方案是将最后一个ID存储在JS中的全局变量中并递增,这样您就不必依赖于选择正确的元素来查找要POST的ID。

答案 1 :(得分:0)

您过快地从服务器提取数据,尝试添加一个标志,以防止在请求运行时拉出项目:

var flagPulling = false;
function loadData() { 
    if( flagPulling ) {
        return;
    }
    flagPulling = true;
    $('div.postloader').html('<img src="http://www.zesteve.com/img/loader.gif">');
    $.post("/getData.php?lastID=" + $(".post-list:last").attr("id"), function(data){
        if (data != "") {
            $(".post-list:last").after(data);            
        }
       $('div.postloader').empty();
       flagPulling = false;
    });
};