js文档碎片处理



js文档碎片处理。文档碎片相当于是装东西的塑料袋在理论上,文档碎片可以提高DOM操作性能,当我们需要把一万个元素插入到页面当中,每次插入一个元素,页面会发生一次变化,页面就需要渲染一次,这是性能会比较低。如果我们将一万个元素先放置到文档碎片当中,然后一次性插入页面,此时页面只需要渲染一次。

创建文档碎片的基本命令:document.createDocumentFragment()

例子:
不使用文档碎片:
window.onload = function () {
var list = document.getElementById(‘list’);
for (var i=0; i<10000; i++) {
var newLi = document.createElement(‘li’);
list.appendChild(newLi);
//由于渲染次数过多,在IE6等低端浏览器当中页面会空白很久,时间很长
}
}
使用文档碎片进行处理
window.onload = function () {
var list = document.getElementById(‘list’);
//创建一个文档碎片
var frag = document.createDocumentFragment();
for (var i=0; i<10000; i++) {
var newLi = document.createElement(‘li’);
frag.appendChild(newLi);
}
list.appendChild(frag);
}

关于文档碎片的选择原则:
文档碎片并不会提高太多的性能,只有在低级的浏览器当中(IE6/7),才会比较高的提高性能,在谷歌、IE9等浏览器当中如果使用,基本上不会提高性能,有时还会降低性能。通常是提高插入dom元素时才会使用。