0

無限スクロールに問題があります。下にスクロールすると、次のアイテムが正常に読み込まれますが、それらのアイテムは送信され続けます。アルゴリズムを使用してmysqlでアイテムを注文したため、このjqueryを使用して一意のIDを指定しています。

$("#image-list li").each(function(index) {
    $(this).attr('id', index);
});

外部phpファイルから新しく指定されたアイテムにラベルを付けるには、ファイルでもこの​​コードを使用する必要があります。

指定されたアイテムに関する情報を送信するために、私はこのjqueryを使用しています:

function last_db_item_function() 
 { 

    var ID=$(".db-item:last").attr("id");
    $('div#last-db-item-loader').html('<img src="loading.gif" height="30px" />');
    $.post("index.php?action=get&last_db_item="+ID,

    function(data){
        if (data != "") {
        $(".db-item:last").after(data);         
        }
        $('div#last-db-item-loader').empty();
    });
 };  

 $(window).scroll(function(){
    if  ($(window).scrollTop() == $(document).height() - $(window).height()){
       last_db_item_function();
    }
 }); 

しかし問題は、それが機能していないように見えることです。つまり、新しく解析された php ファイルから最後のアイテム ID が収集されないということです。PHPを解析するために、私はこれを行ってきました:

$last_db_item = $_GET['last_db_item'];
$action = $_GET['action'];      

if($action != "get")
{
 .... Code Here....
}else{
 include ('secondimages.php');

}

だから私の質問は、なぜこれが永遠に続くように見えるのですか?

4

1 に答える 1

0

新しい要素をリストに追加するときに、新しい要素に新しいIDを割り当てることは決してないようです。新しい要素が追加されるたびに最初のスニペットを呼び出すか、追加するときに同様のコードをその1つの要素に適用する必要があります(phpに戻ってくる場合を除き、その時点で知る必要があります)。あなたが返しているものについての詳細)

于 2011-05-24T16:05:21.853 に答える