document.createDocumentFragment使用。
1.createDocumentFragment()方法,是用來(lái)創(chuàng)建一個(gè)虛擬的節(jié)點(diǎn)對(duì)象,或者說(shuō),是用來(lái)創(chuàng)建文檔碎片節(jié)點(diǎn)。它可以包含各種類型的節(jié)點(diǎn),在創(chuàng)建之初是空的。??
2.DocumentFragment節(jié)點(diǎn)不屬于文檔樹(shù),繼承的parentNode屬性總是null。它有一個(gè)很實(shí)用的特點(diǎn),當(dāng)請(qǐng)求把一個(gè)DocumentFragment節(jié)點(diǎn)插入文檔樹(shù)時(shí),插入的不是DocumentFragment自身,而是它的所有子孫節(jié)點(diǎn),即插入的是括號(hào)里的節(jié)點(diǎn)。這個(gè)特性使得DocumentFragment成了占位符,暫時(shí)存放那些一次插入文檔的節(jié)點(diǎn)。它還有利于實(shí)現(xiàn)文檔的剪切、復(fù)制和粘貼操作。
3.當(dāng)需要添加多個(gè)dom元素時(shí),如果先將這些元素添加到DocumentFragment中,再統(tǒng)一將DocumentFragment添加到頁(yè)面,會(huì)減少頁(yè)面渲染dom的次數(shù),效率會(huì)明顯提升。
4.使用appendChid方法將原dom樹(shù)中的節(jié)點(diǎn)添加到DocumentFragment中時(shí),會(huì)刪除原來(lái)的節(jié)點(diǎn)。
>DocumentFragments are DOM Node objects which are never part of the main DOM tree. The usual use case is to create the document fragment, append elements to the document fragment and then append the document fragment to the DOM tree. In the DOM tree, the document fragment is replaced by all its children.??
>Since the document fragment is in memory and not part of the main DOM tree, appending?children to it does not cause page reflow (computation of element's position and geometry). Historically, using document fragments could result in better performance.??
document.createDocumentFragment使用。的評(píng)論 (共 條)
