问答详情
源自:10-1 编程挑战

系统给的答案,第二个for循环是什么意思啊?

<script type="text/javascript">

        window.onload = function(){

            var oTab = document.getElementById("tabs");

            var oUl = oTab.getElementsByTagName("ul")[0];

            var oLis = oUl.getElementsByTagName("li");

            var oDivs= oTab.getElementsByTagName("div");


            for(var i= 0,len = oLis.length;i<len;i++){

                oLis[i].index = i;

                oLis[i].onmousemove = function() {

                    for(var n= 0;n<len;n++){

                        oLis[n].className = "";

                        oDivs[n].className = "hide";

                    }

                    this.className = "on";

                    oDivs[this.index].className = "";

                }

            }

        }

   </script>



提问者:春白 2018-10-26 10:14

个回答

  • 慕桂英1452036
    2018-10-26 20:40:14

    第二个for循环的作用是排他,统一将li的类名去掉,取消选中效果.循环结束之后通过this获得事件触发元素,然后给它上on这个类名来显示.以此做到仅选中元素显示,其他元素隐藏的效果.