javascript - 向 DOM 添加新元素时遇到问题?

标签 javascript dom

尝试向 DOM 添加新元素,但根据我尝试执行的操作,我会收到各种错误。

http://jsfiddle.net/pRVAd/

<html>
<head>
    <script>
        var newElement = document.createElement("pre");
        var newText = document.createTextNode("Contents of the element");
        newElement.appendChild(newText);
        document.getElementsByTag("body").appendChild(newElement);
    </script>
</head>
<body>
    <p>Welcome</p>
</body>

</html>​

最佳答案

脚本位于 <head>并且您的代码立即运行(这不是延迟的函数调用)。 <body>当您尝试运行它时它不存在。

将脚本移至 </body> 之前 或将其移至函数中并命名为 onload .

getElementsByTag不是 document 上的方法目的。您可能是说 getElementsByTagName但它返回一个 NodeList,而不是 HTMLElementNode。这就像一个数组。您需要将第一个项目从其上拉下来,或者更好:

使用document.body

关于javascript - 向 DOM 添加新元素时遇到问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10448718/

相关文章:

javascript - svg dom 使用变量来定义对象属性

javascript - HTML2Canvas 不渲染完整的 div,仅渲染屏幕上可见的内容

javascript - 替换对象中的嵌套字段值

使用 jQuery $.ajax 的 Javascript 范围查询

javascript - 添加新元素到 DOM 后如何重新加载函数

java - 如何以编程方式更新元素并将其添加到 XSD

Javascript:为什么函数对 array() 和 array[] 的处理方式不同?

javascript - Angular js :unexpected token error shown in android studio console, 但在浏览器中工作正常

javascript - 使用 react refs 来关注兄弟元素

javascript - 如何在运行时调整 DOM 元素的大小