2
我应该使用document.createDocumentFragment还是document.createElement
我正在阅读有关文档片段和DOM重排的信息,想知道它们与DOM中不存在什么document.createDocumentFragment区别,document.createElement直到我将它们附加到DOM元素上为止。 我做了一个测试(如下),所有这些都花费了完全相同的时间(约95ms)。猜测可能是由于没有将样式应用于任何元素,因此可能没有重排。 无论如何,基于下面的示例,为什么在插入DOM时我应该使用createDocumentFragment而不是为什么createElement,两者之间的区别是什么? var htmz = "<ul>"; for (var i = 0; i < 2001; i++) { htmz += '<li><a href="#">link ' + i + '</a></li>'; } htmz += '<ul>'; //createDocumentFragment console.time('first'); var div = document.createElement("div"); div.innerHTML = htmz; var fragment = document.createDocumentFragment(); while (div.firstChild) { fragment.appendChild(div.firstChild); } $('#first').append(fragment); console.timeEnd('first'); …
97
javascript
dom