<html>
<head>
<title>home-page</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0/">
<style type="text/css">
html,body,h1,h2,h3,h4,h5,h6,div,dl,dt,dd,ul,ol,li,blockquote,pre,p,hr,figure,table,caption,th,td,form,fieldset,legend,input,button,textarea,menu{margin:0;padding:0;}
div{width: 200px; height: 300px;background-color: blue;display: inline-block;}
.active{background-color: red;}
</style>
</head>
<body>
<div id="one" class="active"></div>
<div id="two"></div>
<div id="three"></div>
<script type="text/javascript">
document.getElementById("one").onclick=function(){
document.getElementsByClassName("active")[0].className="";
document.getElementById("one").className="active";
}
document.getElementById("two").onclick=function(){
document.getElementsByClassName("active")[0].className="";
document.getElementById("two").className="active"
}
document.getElementById("three").onclick=function(){
document.getElementsByClassName("active")[0].className="";
document.getElementById("three").className="active"
}
</script>
</body>
</html>
请问大家在这段代码中若果使用document.getElementsByClassName("active").className="";
把[0]去掉则会active这个类名这不会变换颜色
不明白你想问什么
getElementsByClassName
的返回值就是一个数组,无论获取到了0个,1个或是多个。