关于JavaScript的非常基本的setAttribute

时间:2015-05-31 05:07:50

标签: javascript object element setattribute

我是JavaScript的初学者,我无法理解为什么在这个简单的代码中出现在控制台中 color.setAttribute不是函数



<style>
	.red {color:red;}
	.blue { color: blue;}
</style>
</head>
<body>
<p class="red">Hello World</p>
<script>
	var color = document.getElementsByClassName("red");
	color.setAttribute("class","blue");
</script>
&#13;
&#13;
&#13; 据我所知,当声明变量 color 时,我创建了一个元素对象,我可以使用方法:setAttribute。

提前致谢,对不起,如果我的问题是愚蠢的。

2 个答案:

答案 0 :(得分:8)

document.getElementsByClassName("red")返回一个像对象一样的dom对象。所以你应该写下面的内容。

var color=document.getElementsByClassName("red")[0];
color.setAttribute("class","blue");

答案 1 :(得分:3)

document.getElementsByClassName返回NodeList。您已使用索引从节点列表中选择节点。

var color = document.getElementsByClassName("red")[0]; // the first element