使用jQuery可以很方便的添加,删除或者修改DOM节点,但在一些循环,例如for(),while()或者$.each()中处理节点时,下边有个实例,值得注意:
var top_list=[……]; //假设这里是100个字符串 $mylist=$("#mylist"); //jQuery选择器ul for(var i=0,i=top_list.length;i<1;i++){ $mylist.append("<li>" + top_list[i] + "</li>"); }
以上代码,将每一个新添加的标签元素都作为一个节点添加到容器ID中,这将给jQuery操作性能增加很多的负重,更好的方式是尽可能的减少DOM操作,这里迎将整个元素字符串在插入DOM之前全部创建好,修改代码如下:
var top_list=[……]; //假设这里是100个字符串 $mylist=$("#mylist"); //jQuery选择器ul var top_li=""; //这个变量将用来存储我们的列表元素 for(var i=0,i=top_list.length;i<1;i++){ top_li +="<li>" + top_list[i] + "</li>"; } $mylist.append(top_li);
jQuery逻辑--性能,都是需要考虑的,这也许也是在jQuery的学习之路上的一步一步沉淀的。
Come on!
jQuery性能优化--循环时的DOM操作,布布扣,bubuko.com
原文:http://blog.csdn.net/comeonstone/article/details/38517491