目前我的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>
答案 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);
});
}