javascript - 创建段落节点时遇到问题

标签 javascript nodes

我无法显示第二个文本节点

https://codepen.io/CusterMonroe/pen/QWLRqze

控制台没有错误。文本节点“文档”只是不会打印到屏幕上。想知道为什么。谢谢。

var newEm = document.createElement("em");
var text1 = document.createTextNode("Historic");

var newP = document.createElement("p");
var text2 = document.createTextNode(" Document");

newEm.appendChild(text1);
newP.appendChild(text2);
var phrase = newP.insertBefore(newEm,text2);

 document.getElementById("testBox").appendChild(phrase);

最佳答案

insertBefore 的返回值是插入的节点,因此您只插入 newEm。而是附加 newP

var newEm = document.createElement("em");
var text1 = document.createTextNode("Historic");

var newP = document.createElement("p");
var text2 = document.createTextNode(" Document");

newEm.appendChild(text1);
newP.appendChild(text2);
var phrase = newP.insertBefore(newEm, text2);

document.body.appendChild(newP);
#testBox {
  border: 2px black solid;
  height: 300px;
  max-width: 75%;
  margin: 0 auto 25px;
  width: 600px;
}
<div="testBox"></div>

我可能会写得更简洁一些。

var newP = document.body.appendChild(document.createElement("p"));

newP.appendChild(document.createElement("em"))
  .appendChild(document.createTextNode("Historic"));

newP.appendChild(document.createTextNode(" Document"));
#testBox {
  border: 2px black solid;
  height: 300px;
  max-width: 75%;
  margin: 0 auto 25px;
  width: 600px;
}
<div="testBox"></div>

关于javascript - 创建段落节点时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58151675/

相关文章:

javascript - Mootools 背景改变

javascript - JSHint 错误 Don't make functions within a loop

javascript - 将输入框值绑定(bind)到数据集

java - 将 Node 实现为泛型类

java - 无法在链表前面插入节点

kubernetes - 如何检查我可以为 kubernetes 集群中的 pod 请求的最大内存?

c - 在链表中添加节点

javascript - Div根据图像调整大小点击

javascript - 在 Express 应用程序的路由中运行 setInterval 函数的正确且非阻塞的方式是什么?

windows - Windows 节点上的 Kubernetes NAT pod IP