【发布时间】:2011-08-26 05:04:59
【问题描述】:
我正在尝试像这样在 js 中使用 insertBefore:
var p = document.createElement("p");
p.innerHTML = "test1";
document.body.insertBefore(p, null);
var p = document.createElement("p");
p.innerHTML = "test2";
document.body.insertBefore(p, null);
但这会在body标签关闭之前添加最后一个p元素,我如何使用它以便在它打开时将其添加到顶部?所以最后添加的元素将是body标签内的第一个元素。
我试过了:
document.body.insertBefore(p, document.getElementsByTagName('body')[0]);
但萤火虫显示:
找不到节点”代码:“8
【问题讨论】:
-
试用 document.body.prepend。此外,通常最好不要设置 innerHTML。使用
oldNode.replaceWith(newNode)或设置oldNode.innerText -
@Gibolt
textContent应该是设置文本的首选。
标签: javascript dom insert getelementsbytagname