私は Backbone.js アプリで documentFragments を使用することを検討してきましたが、documentFragment を親 DOM 要素に追加するときに「cloneNode」が使用されている例を見るのはなぜだろうと思っていました。
例はここで見ることができます。DocumentFragment セクションを見下ろすと、次のように表示されます。
oFrag = document.createDocumentFragment();
for (var i = 0, imax = aElms.length; i < imax; i++) {
oFrag.appendChild(aElms[i]);
}
o.innerHTML = '';
o.appendChild(oFrag.cloneNode(true));
「oFrag」が単に追加されるのではなく複製されるのはなぜですか? 別のブログ投稿では、「cloneNode」を使用していません (比較として)。