自己写了一个显示隐藏块的方法,发现不能让导航块更显示块对应起来,希望大侠指点!
var tabChange = {
_selector: null,
_childs: null,
addEvent: function(Event,tagName,className,className1){
var box = className.replace(/\s.*/,"");
var class = className.replace(/.*\s/,"");
var boxELe = document.getElementsByTagName(tagName);
for(var i = 0;i < boxELe.length;i++){
if(boxELe[i].className == box){
_selector = boxELe[i];
_childs = _selector.childNodes;
}
}
var eleIndex = 0;
for(var j = 0;j < _childs.length; j++){
if(_childs[j].className == class){
if(Event == "click"){
 _childs[j].onclick = function(){tabChange.show(this,className,tagName)};
}else if(Event = "mouseover"){

}
}
}
},
show:function(obj,className,tagName){
var Ele = document.getElementsByTagName(tagName);
alert(obj.innerHTML)
for(var k = 0;k < Ele.length;k++){
if(Ele[k].className == className){
index_x++;
if(index_this == index_x){
Ele[k].style.display = "block";
}else{
Ele[k].style.display = "none";
}
}
}
}
}
调用时tabChange.show(参数即可);

解决方案 »

  1.   

    导航块更显示块对应起来什么叫对应起来?Ele[k].style.display = "block";
    改为
    Ele[k].style.display = "";试试
      

  2.   


    <div class="box">
    <div class="childs">a</div>
    <div class="childs">b</div>
    <div class="childs">c</div>
    </div>
    <div class="show">1</div>
    <div class="show">2</div>
    <div class="show">3</div>
    这样的结构,a-1,b-2,c-3这样显示对应的块!