的名单上有div的列表,如:更新DIV
<div class="categories" onmouseover="this.style.background='#CCCCCC'" onmouseout="this.style.background='#FFFFFF'">
<div class="categories1">
Andy
</div>
<div class="categories2">
Link to Andy
</div>
</div>
<div class="categories" onmouseover="this.style.background='#CCCCCC'" onmouseout="this.style.background='#FFFFFF'">
<div class="categories1">
Mark
</div>
<div class="categories2">
Link to Mark
</div>
</div>
...
<div class="categories" onmouseover="this.style.background='#CCCCCC'" onmouseout="this.style.background='#FFFFFF'">
<div class="categories1">
Yuri
</div>
<div class="categories2">
Link to Yuri
</div>
</div>
由名称排序里面categories1
。
通过AJAX/jQuery我添加到服务器一个新的类别,并在此操作后,我想更新客户端上的列表。
所以,我认为这些方式:
的插入的一个后,选择从数据库中的所有类别,创建整个HTML并刷新旧的一个新一个;作为编码的解决方案速度更快,但如果列表太长,开销很大;
从服务器只加载创建的元素,浏览DOM trought jQuery,检查放置元素的位置(检查字母顺序)并添加它;
没有一个听起来不错,所以我会问你一些建议/提示/想法。
谢谢
+1非常优雅的解决方案。如果列表很大,可以将'.empty()'语句移动到'sort()'之前,以防止处理时出现无序内容的闪烁。显然'append()'需要保持最后! :) – 2011-05-26 12:40:53
@Chris好的建议 - 如果需要的话,这也是放置加载启动画面的好地方。 – 2011-05-26 12:45:27
试过你的例子,但实际上它没有做正确的排序:检查出这个http://jsfiddle.net/rz3Ww/1/:Gabba应该在GTW之前,而不是之后... – markzzz 2011-05-26 13:05:50