执行不了啊 哪里出错啦?

来源:10-1 编程挑战

qq_因为太帅曾被砍_0

2017-01-13 11:13

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<title></title>

<style type="text/css">

*{margin:0px;padding: 0px;}

ul,li{list-style: none;}

#tabs{width: 320px;border:1px solid ;height: 200px;margin:20px;}

#tabs ul{display: block;height: 30px;line-height: 30px;border-bottom: 2px saddlebrown solid;}

#tabs ul li{background: #fff;cursor: pointer;float: left;height: 28px;line-height: 28px;margin:0px 3px;border: 1px solid #aaa;border-bottom: none;display: inline-block;width: 80px;text-align: center;}


#tabs ul li.on{border-top: 2px saddlebrown solid;}

#tabs div{height: 120px;line-height: 30px;border:1px solid #336699;border-top: none;padding: 5px;}

.neirong{display:none;}


</style>

<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].onclick=function(){

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

oLis[n].className="";

oDivs[n].className='neirong';

}

this.className='on';

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

}

};

}



</script>

    


</head>

<body>

<div id="tabs">

<ul>

<li class="on">绝情公子</li>

<li>疯狂寻爱</li>

<li>一见钟情</li>

</ul>


<div>

绝情公子 是一位无心的的剑客哟!<br>

所到之处 寸草不生 呵呵 你懂得

</div>

<div class="neirong">

疯狂寻爱 疯狂得寻找他的爱情<br>

人称 寻爱魔王

</div>

<div class="neirong">

世界上没有什么一见钟情<br>

可是这位大哥不管什么女人都一见就钟情!

</div>


</div>



</body>

</html>


写回答 关注

2回答

  • KeviN_LE
    2017-01-23 13:30:08

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

    oLis[i].index=i;

    oLis[i].onclick=function(){

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

    oLis[n].className="";

    oDivs[n].className='neirong';

    }

    this.className='on';

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

    }

    };

    }

    第一行 for(var i=0;)里面的第一个“;”改成“,”

  • qq_九天揽月
    2017-01-13 23:34:11

    for(var i=0;len=oLis.length;i<len;i++)写法有问题;

    把 len = oLis.length;移到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');

            len = oLis.length;

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

                oLis[i].index = i;

                oLis[i].onclick = function() {

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

                        oLis[n].className = "";

                        oDivs[n].className = 'neirong';

                    }

                    this.className = 'on';

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

                }

            };

        }

        </script>


JavaScript进阶篇

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

468194 学习 · 21891 问题

查看课程

相似问题