为了账号安全,请及时绑定邮箱和手机立即绑定

为什么要这样做li[i].index = i; 使用getElementsByTagName返回的不就已经是一个数组了吗 为什么还要增加编号

  window.onload=function(){
        var otab=document.getElementById("tab");
        var  li=document.getElementsByTagName("li");
        var div=otab.getElementsByTagName("div");
     for(var i=0;i<li.length;i++){//获取所有i编号的元素
            li[i].index = i;  //定义一个index属性对li进行编号
            li[i].onclick = function(){//再注册一个点击事件,当点击的时候所有标签都恢复最初状态
            for(var n=0;n<li.length;n++){//这步是相对于未被点击部分的样式
                li[n].className = "";
                div[n].className = "hide";
            }
            this.className = "on";//再对点击事件添加相应的属性
            div[this.index].className = "";//通过之前的index编号绑定的指定div
            }
        }
    }

正在回答

1 回答

设置index就是给菜单栏的每一项编号 比如你点击了菜单栏的第二项 然后通过this.index返回index的值2 然后用div[this.index]来设置className

2 回复 有任何疑惑可以回复我~
#1

不知所语

这里了的this.index是i赋值的,为什么不直接用div[i]就行了 要这么麻烦呢
2016-05-07 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么要这样做li[i].index = i; 使用getElementsByTagName返回的不就已经是一个数组了吗 为什么还要增加编号

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信