我想知道如果它使用jQuery AJAX检测到来自aspx的任何新的<li>data</li>
,是否可能检测和fadeIn。主要用于新闻评论系统,因此其他读者在阅读新闻时会看到新评论消失,以及它如何适用于以下代码。
$(document).ready(function () {
$.ajax({
url: 'WebForm1.aspx',
success: function (data) {
$("#Urunler").html(data);
}
});
});
<ul id="Urunler" runat="server">
</ul>
答案 0 :(得分:1)
如果您无法更改webform1.aspx
文件以仅返回新的li
元素,那么您可以执行以下操作 -
你的成功功能将是
var count = $("#Urunler").find('li').length;
var count1 = $(data).siblings().length;
if(count < count1){
var startIndex = count;
while(startIndex < count1){
var li = $($(data).siblings()[startIndex++]).clone();
li.hide();
$("#Urunler").append(li).fadeIn();
}
}
这将检查li
中现有ul
元素的数量,并检查该数字与数据返回的li
总数。如果返回的li
数量更大,则会一次将li
个ul
附加到{{1}}并将其淡入。我自己没有检查过代码,但这应该给出你有个主意。
答案 1 :(得分:0)
在这种情况下,由于您要添加元素列表,因此您需要使用appendTo
而不是html
。
$(data).appendTo('#Urunler').hide().fadeIn();
当您使用html
时,它会抓取整个#Urunler
元素并隐藏它,而appendTo
则只允许您处理您创建的数据。
编辑:在使用appendTo
的含义时使用追加