0

現時点では、ページの読み込み時に div が 1 つずつ読み込まれます。全然大丈夫です!私が ajax リクエストを作成しappend(data)てから同じコンテナーに送信すると、コードは新しく追加された div ではなく、ページ上のすべての div をループしますか?

私の質問は.each()、新しく追加された ajax 成功データに対してのみ同じ効果を実行するにはどうすればよいですか?

jQuery:

success: function(data){
    $('#profileLinks').append(data);  

    $('.eachLink').each(function(i) {
        $(this).fadeOut(0).delay(100*i).fadeIn(500);
    }); 

} 

HTML:

<div id="profileLinks" class="floatLeft">
    <div class="eachLink floatLeft">Div 1</div>
    <div class="eachLink floatLeft">Div 2</div>
</div>
4

2 に答える 2

2
var $data = $(data);
$data.find(".eachLink").addClass("not-animated-yet").appendTo("#profileLinks");
$(".eachLink.not-animated-yet").each(/* your animation function */);
于 2013-11-13T14:24:32.687 に答える
0

class 属性を削除してみてください:

success: function(data){
    $('#profileLinks').append(data);  

    $('.eachLink').each(function(i) {
        $(this).removeClass(".eachLink");
        $(this).fadeOut(0).delay(100*i).fadeIn(500);
    }); 

} 
于 2013-11-13T14:26:56.730 に答える