我有以下代码几乎可以创建一个 div 元素以及里面的任何内容并将其放入
function create(htmlStr) {
var frag = document.createDocumentFragment(), temp = document.createElement('div');
temp.innerHTML = htmlStr;
while (temp.firstChild) {
frag.appendChild(temp.firstChild);
}
return frag;
}
var fragment = create('<div id="test">HELLO</div>');
document.body.insertBefore(fragment, document.body.childNodes[0]);
但是,我很困惑为什么我们要创建另一个
div
temp = document.createElement('div');
如果我们已经传递<div id="test">HELLO</div>
给create()
函数。在我看来,这会在 div 中创建一个 div(但它不会)。还是只是用 提取temp.firtChild
?temp.innerHTML = htmlStr;
sincetemp
is a 是什么意思div
?