|
復制代碼 代碼如下:
function html2node(s) {
var d = document.createElement('div');
d.innerHTML = s;
if (d.childNodes.length == 1)
return d.childNodes[0];
var df = document.createDocumentFragment();
while (d.firstChild)
df.appendChild(d.firstChild);
return df;
}
大概的原理都明白,比較困惑的是為什么要用 document.createDocumentFragment 呢?
后來在網(wǎng)上搜索了一下相關資源才知道,document.createDocumentFragment 是用來創(chuàng)建文檔碎片的。
當我們需要大量 appendChild 頁面元素時,可以先將這些元素 appendChild 進document.createDocumentFragment。
然后只需 appendChild 文檔碎片到頁面就可以了。這樣就不用多次刷新頁面達到性能優(yōu)化的目的。上面那個代碼我覺得用到文檔碎片是多余的。
JavaScript技術:初識javascript 文檔碎片,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。