当我使用 append child 附加字符串时,Javascript 无法识别节点

Dav*_*eke 0 javascript dom

我正在使用 DOM 命令来更好地理解它们。但是,当我尝试将一串 HTML 附加到我选择的元素的子元素时,我收到一条错误消息。我收到一条错误消息,指出我的 div3 变量不是节点。但是,当我 console.log(div3) 它在我的控制台日志中被列为一个节点。我究竟做错了什么?

var div3 = document.getElementById('div3');
div3.innerHTML = "Test String";
console.log(div3);

div3.appendChild("<h2>myH2 tag</h2>")
Run Code Online (Sandbox Code Playgroud)
<div id="div3"><p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Consequatur, natus.</p></div>
Run Code Online (Sandbox Code Playgroud)

Seb*_*rsø 5

如果您收到与我相同的错误消息,则如下所示:

VM189:1 未捕获的类型错误:无法在“节点”上执行“appendChild”:参数 1 的类型不是“节点”。

这是因为"<h2>myH2 tag</h2>"不是节点。

如果你想附加一个这样的标签,你必须从头开始创建一个节点,然后附加它:

// your code:
var div3 = document.getElementById('div3');
div3.innerHTML = "Test String";

// new:
const newNode = document.createElement('h2')

newNode.innerText = "myH2 tag"

div3.appendChild(newNode)
Run Code Online (Sandbox Code Playgroud)

那应该这样做。