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!

jQuery性能优化--循环时的DOM操作,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。