Javascript:textContent 和 getElementsByTagName 在我的代码中不起作用

标签 javascript html

这是我的代码:

<!DOCTYPE html>
<html>
<head>
<title> sample </title>
<script>

var para = document.getElementsByTagName("p")[0]; // First <p> in the document
var text = para.textContent; // Text is "This is a simple document."
para.textContent = "Hello World!"; // Alter paragraph content

</script>

</head>
<body>
<p> This is a simple document. </p>
</body>
</html>

根据我用来学习 javascript 的书,这应该将

标记内的文本更改为“Hello World!”但我不明白为什么它不起作用。

最佳答案

脚本在任何 p 之前运行页面上存在元素。您应该将脚本移动到 </body> 之前.

顺便说一句:其他答案建议绑定(bind)到 load事件。 load事件在所有图像、外部资源和 iframe 都加载完毕后触发,这对于本例来说确实不是必需的。 readystatechangedomcontentloaded事件会更合适(相当于 jQuery 的 ready 事件),它在 DOM 完成加载时和 load 之前触发。会开火。只需将脚本移至页面底部即可获得完全相同的效果,而无需引入更多代码,而且运行速度更快。

关于Javascript:textContent 和 getElementsByTagName 在我的代码中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26184904/

相关文章:

javascript - 在javascript的帮助下打开div

javascript - 将文件中的另一个对象添加到 Javascript 对象数组

javascript - 悬停时更改多个元素

html - 如何摆脱 HTML5 离线缓存?

javascript - 输入字段收到文本时如何更改标签颜色?

html - 具有 body 图像背景的事件 LI 的 css 箭头?

javascript - 我如何在使用 XSLT 和 jQuery 的书中获得动态标题?

JavaScript:select1 on-change 填充 select2 中的特定选项(具有 2 个值)

javascript - 如何将热图包裹在螺旋(季节性螺旋)- d3 上?

javascript - 使用 JavaScript 制作动态 HTML 页面以重定向到 URL