jQuery性能优化--循环时的DOM操作
使用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!
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。