为什么" getElementsByTagName"找不到任何东西?

时间:2016-01-04 23:30:29

标签: javascript

这似乎应该是非常基本的,我无法弄清楚它为什么不起作用。到目前为止,我有一个超级简单的页面,我想用JS选择段落:

这是我的HTML:

<!DOCTYPE html>
<html>
  <head>
    <script src="misc.js" type="text/javascript"></script>
  </head>
  <body>
    <p id="first">Just one paragraph.</p>
    <p id="second">Two, actually.</p>
  </body>
</html>

我的JS:

var paras = document.getElementsByTagName('p');
console.log(paras.length);

我希望控制台日志显示2,但我看到0。我非常仔细地阅读了the documentation,我无法弄清楚我在这里做错了什么。

1 个答案:

答案 0 :(得分:5)

在您运行脚本时,文档中没有段落。

移动脚本元素使其显示在段落之后,或者将代码放入函数中,然后稍后调用该函数(例如,当load event触发时)。