弄成代码快照 方便看
1.51行多了一个“<br>”
2.63,64行的this看作用域知道指的是window对象,其属性className和index都是undefined。
正确的应该把
this.className="on";
odiv[this.index].className="";
这两行放在第一个for循环内,最终为
<script type="text/javascript">
window.onload = function(){
var otabl = document.getElementById("tabl");
var oli = document.getElementsByTagName("li");
var odiv = otabl.getElementsByTagName("div");
for(var i=0;i<oli.length;i++){
oli[i].index = i;
oli[i].onclick = function() {
for(var n=0;n<oli.length;n++){
oli[n].className="";
odiv[n].className="hide"
}
this.className="on";
odiv[this.index].className="";
}
}
}
</script>
希望对你能有所帮助^_^
this.className="on"; odiv[this.index].className="";//显示下一个div
这两行要写在onclick函数里面,否则在外面this是谁都不知道