麻烦在ajax请求后用.each()函数淡化div?

时间:2013-11-13 14:20:10

标签: jquery html css ajax each

目前我的div在页面加载时逐个加载。这绝对没问题!虽然当我发出一个ajax请求然后append(data)到同一个容器时,我的代码然后循环遍历页面上的所有div而不是新添加的div?

我的问题是:如何仅对新添加的ajax成功数据执行相同的.each()效果?

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>

2 个答案:

答案 0 :(得分:2)

var $data = $(data);
$data.find(".eachLink").addClass("not-animated-yet").appendTo("#profileLinks");
$(".eachLink.not-animated-yet").each(/* your animation function */);

答案 1 :(得分:0)

您可以尝试删除class属性:

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

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

}