Javascript 修改showhide脚本以隐藏子级别

Javascript 修改showhide脚本以隐藏子级别,javascript,menu,hide,accordion,show,Javascript,Menu,Hide,Accordion,Show,我正在使用一个showhide脚本,我已经修改了它,以便为菜单的不同级别启用它。目前我拥有的是: <script type="text/javascript"> visibleDiv1 = ""; function showHide1(elementid1,qstring){ if (document.getElementById(elementid1).style.display == 'none'){ document.getElementById(elementid

我正在使用一个showhide脚本,我已经修改了它,以便为菜单的不同级别启用它。目前我拥有的是:

<script type="text/javascript">
visibleDiv1 = "";
function showHide1(elementid1,qstring){
  if (document.getElementById(elementid1).style.display == 'none'){
    document.getElementById(elementid1).style.display = '';
    if(visibleDiv1 != ""){
      if(visibleDiv1 != elementid1){
        document.getElementById(visibleDiv1).style.display = 'none';
      }
    }
    visibleDiv1 = elementid1;
  } else {
   document.getElementById(elementid1).style.display = 'none';
  }
}

visibleDiv2 = "";
function showHide2(elementid2,qstring){
  if (document.getElementById(elementid2).style.display == 'none'){
    document.getElementById(elementid2).style.display = '';
    if(visibleDiv2 != ""){
      if(visibleDiv2 != elementid2){
        document.getElementById(visibleDiv2).style.display = 'none';
      }
    }
    visibleDiv2 = elementid2;
  } else {
    document.getElementById(elementid2).style.display = 'none';
  }
}

visibleDiv3 = "";
function showHide3(elementid3,qstring){
  if (document.getElementById(elementid3).style.display == 'none'){
    document.getElementById(elementid3).style.display = '';
    if(visibleDiv3 != ""){
      if(visibleDiv3 != elementid3){
        document.getElementById(visibleDiv3).style.display = 'none';
      }
    }
    visibleDiv3 = elementid3;
  } else {
    document.getElementById(elementid3).style.display = 'none';
  }
}

visibleDiv4 = "";
function showHide4(elementid4,qstring){
  if (document.getElementById(elementid4).style.display == 'none'){
    document.getElementById(elementid4).style.display = '';
    if(visibleDiv4 != ""){
      if(visibleDiv4 != elementid4){
        document.getElementById(visibleDiv4).style.display = 'none';
      }
    }
    visibleDiv4 = elementid4;
  } else {
    document.getElementById(elementid4).style.display = 'none';
  }
}
</script>

visibleDiv1=“”;
函数showHide1(elementid1,qstring){
if(document.getElementById(elementid1.style.display=='none'){
document.getElementById(elementid1.style.display='';
如果(visibleDiv1!=“”){
if(visibleDiv1!=elementid1){
document.getElementById(visibleDiv1.style.display='none';
}
}
visibleDiv1=元素ID1;
}否则{
document.getElementById(elementid1.style.display='none';
}
}
visibleDiv2=“”;
函数showHide2(elementid2,qstring){
if(document.getElementById(elementid2.style.display=='none'){
document.getElementById(elementid2.style.display='';
如果(visibleDiv2!=“”){
if(visibleDiv2!=elementid2){
document.getElementById(visibleDiv2.style.display='none';
}
}
visibleDiv2=元素ID2;
}否则{
document.getElementById(elementid2.style.display='none';
}
}
visibleDiv3=“”;
函数showHide3(elementid3,qstring){
if(document.getElementById(elementid3.style.display=='none'){
document.getElementById(elementid3.style.display='';
如果(visibleDiv3!=“”){
if(visibleDiv3!=elementid3){
document.getElementById(visibleDiv3.style.display='none';
}
}
visibleDiv3=元素ID3;
}否则{
document.getElementById(elementid3.style.display='none';
}
}
visibleDiv4=“”;
函数showHide4(elementid4,qstring){
if(document.getElementById(elementid4.style.display=='none'){
document.getElementById(elementid4.style.display='';
如果(visibleDiv4!=“”){
if(visibleDiv4!=elementid4){
document.getElementById(visibleDiv4.style.display='none';
}
}
visibleDiv4=元素ID4;
}否则{
document.getElementById(elementid4.style.display='none';
}
}
基本上我想做的是,当我点击与函数相关的按钮时,让ShowHide1也隐藏visibleDiv2,3,4。ShowHide2隐藏3,4,ShowHide3隐藏4。因为我在每个div中都有页面内容,我不想在父div打开时显示这些内容

谁能帮我一把吗


谢谢

是的,我可以帮你试试这个

<input type="button" value="one" id="show_1" onclick="hideShow(this)"> 
 var arr_divids = ['div_1','div_2','div_3','div_4']; // ids for each of the content to be shown in 

 function hideShow(oWhich){
   for (var i =1; i < arr_divids.length+1; i++) {
     document.getElementById(arr_divids[i-1]).style.display = (i == (oWhich.id).slice(-1)) ? "block" : "none";
    }
  }