怎么选项卡功能实现不了?

来源:10-1 编程挑战

慕粉cuicui

2016-10-13 12:07

window.onload=function(){
  var oTab=document.getElementById("tabs");
  var oUl=document.getElementsByTagName("ul")[0];
  var oLis=document.getElementsByTagName("li");
  var oDivs=document.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="hide"; }          this.className="on";          oDivs[this.index].className="";   } };

写回答 关注

2回答

  • 慕粉3213964
    2016-10-13 22:00:31

    window.onload=function(){
      var oTab=document.getElementById("tab1");
      var oUl=document.getElementsByTagName("ul")[0];
      var oLis=document.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="hide";
            }          
            this.className="on";          
            oDivs[this.index].className="";   
            }
        }
        };

    用你的代码改的,排版太难看,最后少个大括号,第一个for循环里最后多个;,而且第一个表达式应该写成var i=0,len=oLis.length。

    var oDivs=document.getElementsByTagName("div");这句如果你把整个放在div里的话只会把你屏幕清空,我的是var oDivs=oTab.getElementsByTagName("div"); 问题也不说清,只能按照我自己想的改了

  • 慕粉3815819
    2016-10-13 18:52:56

    等大神

JavaScript进阶篇

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

468060 学习 · 21891 问题

查看课程

相似问题