2016-04-14 5 views
1

jQueryを初めて使用しています。ユーザーが下にスクロールすると、さらに多くのレコードがページに追加/表示されるという、私のWebアプリケーションにFacebookのような機能を実装する必要があります。私は正常にスクロールの下にajaxリクエストを送信し、レコードをフェッチすることができました。私がサーバーから持ってきたデータは完璧です。しかし、私はそのページにそのデータを表示/追加する方法を理解することに悩まされています。私は何かを試して失敗しました。提案してください。jQueryを使用して下にスクロールするレコードを追加/追加する方法

私のAJAX呼び出し:私が何をしようとしています何よりも、この問題に、よりエレガントな解決策があるかどう

var noOfMessageLoadsDone = 1; 

$(window).scroll(function() { 
if($(window).scrollTop() + $(window).height() == $(document).height()) { 
    if(!$.active){ 
    $.get(
    "/fetchMoreOnScroll", 
    {loadsDone: noOfMessageLoadsDone}, 
    function(data) { 
     for (var i = 0; i < data.length; i++) { 
     var datum = data[i]; 
     var el = $("div .container").find("div .container").first().clone(); 
     el.removeAttr("id"); 
     el.attr("statusId", datum.id); 
     if(datum.statuserPicName){ 
      el.children('img').attr("src", "/images/"+datum.statuserPicName); 
     } 

     el.find('p').text(datum.statuserFirstName+' '+datum.statuserLastName+': '); 

     $("div .container").find("div .container").append(el); 
     }; 

     noOfMessageLoadsDone++; 
    } 
    ); 
    } 
} 
}); 

も示唆しています。どんな助けでも大歓迎です。

答えて

1

jQueryについてappendのドキュメントを読んだことがありますか?あなたのケースでは、 ".container"の最後に追加が必要です。しかしセレクタでは、 ".container"はそれを見つけるための "div"要素の子である必要があることを示す "div"と ".container"の間にスペースがあるようです。セレクタ "div.container"を使用してみてください。

+1

私は今アプローチを変更しています。私はすべてのタグを含むサンプル 'div'を作成していますが、空です。私はこの 'div'を選択し、それを複製し、それを設定し、' $(div.container) 'の最後に追加します。 スペースが子供を意味することを私の知識に追加してくれてありがとう。 :) –

関連する問題