什么是更快的DOM插入或操作?

Den*_*tor 5 javascript jquery dom

我最好移动我从服务器发送的节点或插入它吗?

我正在使用jQuery(1.4),但想知道jQuery和JS.在这种情况下,节点很小,只有一个孩子.但是,如果它是一个大清单怎么办?

什么

大列表1 = 200 li节点

大列表2 = 1000 li节点

例:

插入:

<div id="wrap">
  <div id="box></div>
</div>

$('#box').before($('<ul id="list"><li>...</ul>')); 
Run Code Online (Sandbox Code Playgroud)

VS

手法:

<div id="wrap">
  <div id="box></div>
</div>
<ul id="list"><li>...</ul>

$('#list').insertBefore($('#box'));
Run Code Online (Sandbox Code Playgroud)

Cha*_*ert 4

客户端将花费更多的时间来渲染新项目,而不是实际将它们放入 DOM 中。我建议您从 DOM 中完全删除 #list,向其中添加项目,然后将其放回 DOM 中。至少对于大数据集来说是这样。

即便如此,重绘可能会很慢,尤其是在具有复杂 CSS 的 IE 上。