getElementsByTagName似乎不起作用

时间:2016-07-25 20:17:51

标签: javascript dom getelementsbytagname selectors-api

有人可以解释为什么我的代码无效!

当我获得元素By Id时,它的效果非常好。但是与getElementsByTagName()相同的方法却没有。

此外,如果我使用querySelector(),它的工作原理。但是,如果我使用querySelectorAll(),则返回相同的错误。

test.html:15 Uncaught TypeError:无法设置属性' color'未定义的

这是我的代码:

<DOCTYPE! html>
<html>
<head>

</head>

<body>
<h1>Hello World</h1>
<p id="par">Hello World</p>

<script>
var par = document.getElementById('par');
par.style.color = "red"
var heading = document.getElementsByTagName("h1");
heading.style.color = "red"
</script>


</body>
</html>

1 个答案:

答案 0 :(得分:2)

enter image description here

您可以清楚地看到document,getElementsByTagName返回一个元素数组,而不是单个元素。

所以你必须遵循正确的索引,否则它将像你的情况一样抛出异常。