javascript - 如何正确创建一个textNode并附加到特定位置?

标签 javascript html function dom

我试图简单地将一个 textNode 附加到 <h1>然后将其附加到正文中 <div id="prob3"> ,但我收到此错误 TypeError: bdy.appendChild is not a functionbdy.appendChild(header); 。这段代码有什么问题?

JavaScript 代码(嵌入 head 标签中):

function init()
{
   var bdy = document.getElementsByTagName("body");
   var header = document.createElement("h1");
   var txt = document.createTextNode("Hello World!");
   header.appendChild(txt);
   bdy.appendChild(header);
}

HTML:

<body onload="init();">
     <div id="prob3">
         <!--Created TextNode goes Here-->
     </div>
</body>

最佳答案

您可以使用:

document.body.appendChild(header);
<小时/>

您的代码无法运行,因为:

var bdy = document.getElementsByTagName("body");

检索元素列表,而不是单个元素。您可以使用:

var bdy = document.getElementsByTagName("body")[0];

从列表中获取第一个元素,但这样做没有意义,因为 document.body 已经为您预定义了。

关于javascript - 如何正确创建一个textNode并附加到特定位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23047826/

相关文章:

html - 如何在 VSTS Wiki 中使用样式或样式表?

JavaScript 术语 : do I (call/invoke/execute) a function?

c++ - 函数内的理论规范多重返回语句

javascript - HTML 表单按钮无法正常工作

javascript - 我不能在 &lt;script&gt; 中使用 <h1>

javascript - 在 javascript 中使用 python 输出

javascript - Javascript中的条件array.join

javascript - 单击按钮时更改嵌入式 youtube 视频中的时间

html - 背景图像未显示在 div 中

C++程序陷入循环