<script type="text/javascript"> // JS实现选项卡切换 window.onload=function(){ var oTab = document.getElementById("tabs"); var oUl = document.getElementsByTagName("ul")[0]; var oList = document.getElementsByTagName("li") var oDiv = oTab.getElementsByTagName("div") for(var i=0;i<oList.length;i++){ oList[i].index = i; oList[i].onclick = function(){ for(var n=0;n<oList.length;n++){ oList[n].className = " "; oDiv[n].className = "hide";//这里选项卡,怎么做到只显示一个,隐藏其他的呢 } this.className = "on";//这里的作用是用来干嘛的啊 oDiv[this.index].className = " ";//这里也一样 } } } </script>
2 回答
已采纳
闹小志
TA贡献75条经验 获得超42个赞
代码原意应该是想把所有的class都移除掉。但是在原生js中,className替换的是整个class属性,所以实际上此处这句:
oList[n].className = " ";//将class属性置空,即移除了所有的属性
在代码中并没有意义,因为就算不清空,后面的:
oDiv[n].className = "hide"//将class属性的值设置为hide
这句也用“hide”把所有替换掉了。
个人理解。
火丁啊
TA贡献14条经验 获得超6个赞
并不是什么都没有 是个空字符串 空字符串并不是什么都没有 什么都没有是null 这个概念很重要 你的代码不全 它的意思应该就是先设置这个元素的class的值为空
添加回答
举报
0/150
提交
取消