错误"the node before which the new node is to be inserted is not a child of this node."



其他相关问题都没有有效的答案,因此我决定自己在这里问。

在编写JavaScript时,无论我尝试什么,我都会收到以下错误:

无法在"节点"上执行"insertBefore":要在其之前插入新节点的节点不是此节点的子节点。

这是我在替换变量名称后的代码行:

newElement.insertBefore(document.body, aChildOfDocumentBody);

newElementaChildOfDocumentBody都用getElementById定义。

即使我尝试newElement.insertBefore(document.body, document.body.children[0])JavaScript也说孩子不属于document.body。我做错了什么?

这似乎只是函数调用中变量的错误排序

newElement.insertBefore(document.body, document.body.children[0])

应该(我认为)是

document.body.insertBefore(newElement, document.body.children[0]);

我已经找到了一个解决方案,并在这里为其他人写这篇文章:

您需要在父级上使用.insertBefore

所以我应该做document.body.insertBefore(newElement, ...)

如果只有这种方法有一个文档字符串...

相关内容

最新更新