你找个数型菜单研究研究吧,就是控制层的style.display

解决方案 »

  1.   

    <div id="parent1" class="parent">
    <a href='#' onclick=expendit(parentElement.id) ></a>
      

  2.   

    最简单的方法就是使用xml,它会自动控制父子关系的!
      

  3.   

    http://fason.nease.net/temp/deeptree.htm
      

  4.   

    给个例子,参考一下
    <html>
    <head>
    <style>
    <!--
    #foldheader{cursor:hand ; font-weight:bold ;
    list-style-image:url(fold.gif)}
    #foldinglist{list-style-image:url(list.gif)}
    //-->
    </style>
    <script language="JavaScript1.2">
    <!--
    /** 
     *  Based on Folding Menu Tree 
     *  Dynamic Drive (www.dynamicdrive.com)
     *  For full source code, installation instructions,
     *  100's more DHTML scripts, and Terms Of
     *  Use, visit dynamicdrive.com
     *
     *  Updated to support arbitrarily nested lists
     *  by Mark Quinn (@robocast.com) November 2nd 1998
     */var head="display:''"
    img1=new Image()
    img1.src="fold.gif"
    img2=new Image()
    img2.src="open.gif"function change(){
       if(!document.all)
          return
       if (event.srcElement.id=="foldheader") {
          var srcIndex = event.srcElement.sourceIndex
          var nested = document.all[srcIndex+1]
          if (nested.style.display=="none") {
             nested.style.display=''
             event.srcElement.style.listStyleImage="url(open.gif)"
          }
          else {
             nested.style.display="none"
             event.srcElement.style.listStyleImage="url(fold.gif)"
          }
       }
    }document.onclick=change//-->
    </script>
    </head>
    <body>
    <ul>
       <li id="foldheader">News</li>
       <ul id="foldinglist" style="display:none">
          <li><a href="http://www.cnn.com">CNN</a></li>
          <li><a href="http://www.abcnews.com">ABC News</a></li>
          <li><a href="http://www.vancouversun.com">Vancouver Sun</a></li>
       </ul>   <li id="foldheader">Games</li>
       <ul id="foldinglist" style="display:none">
          <li><a href="http://www.gamespot.com">GameSpot</a></li>
          <li><a href="http://www.happypuppy.com">Happy Puppy</a></li>
          <li><a href="http://www.gamecenter.com">Game Center</a></li>
       </ul>   <li id="foldheader">Software</li>
       <ul id="foldinglist" style="display:none">
          <li><a href="http://www.download.com">outer 1</a></li>
          <li><a href="http://www.hotfiles.com">outer 2</a></li>
          <li id="foldheader">Nested</li>
          <ul id="foldinglist" style="display:none">
             <li><a href="intro.htm">nested 1</a></li>
             <li><a href="http://www.shareware.com">nested 2</a></li>
          </ul>
          <li><a href="http://www.windows95.com">outer 3</a></li>
          <li><a href="http://www.shareware.com">outer 4</a></li>
       </ul>
    </ul><script language="JavaScript1.2">
    <!--
    /**
     * Get cookie routine by Shelley Powers 
     * ([email protected])
     */
    function get_cookie(Name) {
      var search = Name + "="
      var returnvalue = "";
      if (document.cookie.length > 0) {
        offset = document.cookie.indexOf(search)
        // if cookie exists
        if (offset != -1) { 
          offset += search.length
          // set index of beginning of value
          end = document.cookie.indexOf(";", offset);
          // set index of end of cookie value
          if (end == -1) end = document.cookie.length;
          returnvalue=unescape(document.cookie.substring(offset, end))
          }
       }
      return returnvalue;
    }if (get_cookie(window.location.pathname) != ''){
      var openresults=get_cookie(window.location.pathname).split(" ")
      for (i=0 ; i < openresults.length ; i++){
        foldinglist[openresults[i]].style.display=''
        document.all[foldinglist[openresults[i]].sourceIndex -
    1].style.listStyleImage="url(../images/open.gif)"
      }
    }if (document.all){
      var nodelength=foldinglist.length-1
      var nodes=new Array(nodelength)
      var openones=''
    }function check(){
      for (i=0 ; i <= nodelength ; i++){
        if (foldinglist[i].style.display=='')
           openones=openones + " " + i
      }
      document.cookie=window.location.pathname+"="+openones
    }if (document.all)
      document.body.onunload=check
    //-->
    </script></body>
    </html>
      

  5.   

    <a href='#' id="XXXX" onclick=expendit(this.id) >
    试试吧