想知道这段JS代码的意思

来源:10-1 编程挑战

慕UI6363324

2016-07-15 13:56

window.onload = function() {

        var oUl1 = document.getElementById("ul1");

        var aLi = oUl1.getElementsByTagName("li");

        var oDiv = document.getElementById("tab-list");

        var aDiv = oDiv.getElementsByTagName("div");

        for(var i = 0; i < aLi.length; i++) {

            aLi[i].index = i;

            aLi[i].onmouseover = function() {

                for(var i = 0; i < aLi.length; i++) {

                    aLi[i].className = "";

                }

                this.className = "active";

                for(var j = 0; j < aDiv.length; j++) {

                    aDiv[j].className = "hide";

                }

                aDiv[this.index].className = "show";

            }        

        }

    }


写回答 关注

3回答

  • zhangjieying1996
    2016-07-22 15:43:10

    不知道你现在弄懂没有,刚刚看了别人的解释,用自己的话总结一下:

    第一个循环是为了绑定下标i,为了让后面本页面class能被设置为“show”而进行的。

    在第一个循环内有鼠标监听事件定义了点击后的函数,其中包含了另一个循环,将所有页面的classname都设置成“hide”,在css中.hide的样式是不显示,然后再单独将被点击的页面设置为“show”

  • 朱戏以
    2016-07-20 07:47:01

    同求....

  • 番_小_茄
    2016-07-15 16:07:12

    选项卡 可以参考慕课的这段http://www.imooc.com/code/1912

    kx0001...

    你知道问题中“aLi[i].index=i”这行代码里面的index属性是什么吗?

    2016-07-30 17:28:52

    共 2 条回复 >

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468190 学习 · 21891 问题

查看课程

相似问题