我昨天刚刚优化了我的JS文档, 比较满意, 而且还有及时追踪功能, 有机会再献给大家.
给你一个提示:
<span> 标题 </span>
<div>
空白<span> 子标题 </span>
空白<span> 子标题 </span>
空白<span> 子标题 </span>
</div>

解决方案 »

  1.   

    <script >
    function dd()
    {
    if (event.srcElement.className=="dir")
    {
    if (event.srcElement.className=="dd")
    window.location.href=event.srcElement.hrefif (document.all(event.srcElement.sourceIndex+2).style.display=="none")
    {
    document.all(event.srcElement.sourceIndex+2).style.display=""
    }
    else
    {
    document.all(event.srcElement.sourceIndex+2).style.display="none"
    }
    }
    }
    </script>
    <body >
    asdf
    <div onclick="dd()">
    <img src="df.gif" alt="DFasdf" class="dir"><br>
    <div>
      <img src=df.gif alt="111" class="dd"><br>
      <img alt="DFasdf" src="./image/df.gif"  class="dir"><br>
    <div id="SDF" name="DFDSAF">
        <img src=df.gif alt="111" class="dd">
    </div>
    </div>
    </div>
      

  2.   

    用XML吧!非学酷的。你可以参照微软的MSDN首页
    http://msdn.microsoft.com/library/default.asp
    希望你能爱益非浅!
      

  3.   

    function CreateMenu(menuname,menutext,imagetag) 

    document.write("<div id="+menuname+"><table BORDER=0 CELLSPACING=0 CELLPADDING=0>") 
    switch(imagetag) 

    case 1: 
    imgtag = "images\\topminus.gif" 
    break; 
    case 2: 
    imgtag = "images\\minus.gif" 
    break; 
    case 3: 
    imgtag = "images\\endminus.gif" 
    break; 
    default: 
    imagetag = "images\\topminus.gif" 
    break; 

    imgname = "img"+menuname 
    picname = "pic"+menuname 
    document.write("<TR><TD WIDTH=20><A HREF='javascript:ChangeMenu(\""+menuname+"\","+imagetag+")'><IMG id="+imgname+" SRC="+imgtag+" BORDER=0></A></TD>") 
    document.write("<TD WIDTH=20><IMG id="+picname+" SRC='images\\cf.gif' BORDER=0></TD>") 
    document.write("<TD COLSPAN=4><NOBR><FONT SIZE=-1 FACE='Arial, Helvetica'>"+menutext+"</FONT></TD></TR>") 
    document.write("</table></div>") 
    } function CreateSubMenu(menuname,submenuname,submenunum,submenuarray,sublays,menutag) 

    switch(menutag) 

    case 1: 
    eval('document.all.img'+menuname+'.src="images/topplus.gif"') 
    break; 
    case 2: 
    eval('document.all.img'+menuname+'.src="images/plus.gif"') 
    break; 
    case 3: 
    eval('document.all.img'+menuname+'.src="images/endplus.gif"') 
    break; 
    default: 
    eval('document.all.img'+menuname+'.src="images/topplus.gif"') 
    break; 
    } document.write("<div id="+submenuname+"><table BORDER=0 CELLSPACING=0 CELLPADDING=0>") 
    AddSubMenu(submenunum,submenuarray,sublays,menutag) 
    document.write("</table></div>") 
    } function AddSubMenu(submenunum,submenuarray,sublays,menutag) 

    for (i=0;i<submenunum;i++) 

    document.write("<TR><TD></TD>") 
    for(j=0;j<sublays;j++) 
    if (menutag == 3) 
    document.write("<TD WIDTH=20></TD>") 
    else 
    document.write("<TD WIDTH=20><IMG SRC='images\\blankdots.gif' BORDER=0></TD>") if (i == submenunum -1) 
    imgtag = "images\\enddots.gif" 
    else 
    imgtag = "images\\dots.gif" 
    document.write("<TD WIDTH=20><IMG SRC="+imgtag+" BORDER=0></TD>") 
    document.write("<TD WIDTH=20><IMG SRC='images\\doc.gif' BORDER=0></TD>") 
    document.write("<TD COLSPAN=4><NOBR><FONT SIZE=-1 FACE='Arial, Helvetica'>"+submenuarray[i]+"</FONT></TD></TR>") 

    } function ChangeMenu(menutag,imagetag) 

    divroll = document.all.tags("DIV"); 
      for(i=0; i<divroll.length; i++) 
      { 
    whichEl = divroll(i); 
    idtag = "Sub"+menutag 
        if (whichEl.id == idtag) 
        { 
         if (whichEl.style.display == "none") 
         { 
         switch(imagetag) 

    case 1: 
    eval('document.all.img'+menutag+'.src="images/topminus.gif"') 
    break; 
    case 2: 
    eval('document.all.img'+menutag+'.src="images/minus.gif"') 
    break; 
    case 3: 
    eval('document.all.img'+menutag+'.src="images/endminus.gif"') 
    break; 
    default: 
    eval('document.all.img'+menutag+'.src="images/topminus.gif"') 
    break; 

         whichEl.style.display = "block"; 
         eval('document.all.pic'+menutag+'.src="images/of.gif"') 
         } 
        else 
         { 
         switch(imagetag) 

    case 1: 
    eval('document.all.img'+menutag+'.src="images/topplus.gif"') 
    break; 
    case 2: 
    eval('document.all.img'+menutag+'.src="images/plus.gif"') 
    break; 
    case 3: 
    eval('document.all.img'+menutag+'.src="images/endplus.gif"') 
    break; 
    default: 
    eval('document.all.img'+menutag+'.src="images/topplus.gif"') 
    break; 

         whichEl.style.display = "none"; 
         eval('document.all.pic'+menutag+'.src="images/cf.gif"') 
         } 
        } 
      } 
    } function InitMenu() 

    CreateMenu("Menu","This is Menu",1) //1. menu name 2. img number for the menu( 1-stand for first; 3-stand for end; others is 2) 
    menuarray = new Array('<A class=A1 href="test.htm">submenu1</A>','<A class=A1 href="test.htm">submenu2</A>','<A class=A1 href="test.htm">submenu3</A>') 
    CreateSubMenu("Menu","SubMenu",3,menuarray,1,1) 
    ChangeMenu("Menu",1) 
    CreateMenu("Menu1","This is Menu1",2) 
    menuarray = new Array('<A href="test.htm">submenu1</A>','<A class=A1 href="test.htm">submenu2</A>','<A href="test.htm">submenu3</A>','<A href="test.htm">submenu4</A>') //Menu array 
    CreateSubMenu("Menu1","SubMenu1",4,menuarray,1,2) //1. menu name 2. layer name 3. submenu number 4. submenu name array 5. layer number(no use now) 6.show image num 
    ChangeMenu("Menu1",2) // first time hide the layer 
    CreateMenu("Menu2","This is Menu2",2) 
    CreateMenu("Menu3","This is Menu3",3) 
    menuarray = new Array('<A href="test.htm">submenu1</A>','<A class=A1 href="test.htm">submenu2</A>','<A class=A1 href="test.htm">submenu3</A>') 
    CreateSubMenu("Menu3","SubMenu3",3,menuarray,1,3) 
    ChangeMenu("Menu3",3) 
    } InitMenu() 
    //menu.htm 
    <html> 
    <STYLE TYPE='text/css'> 
    <!-- 
    .A1 {text-decoration: none; color: #000000} 
    --> 
    </STYLE> 
    <body> 
    <script language="JavaScript" src="menu.js"></script> 
    </div> 
    </body> 
    </html> 
      

  4.   

    你看我这个行吗?是动态的。
    kinghack.myrice.com
    不好意思,可能不够好的。
    要不这个也行,只不过界面不一样。但原理是一样的。
    foomtv.my163.com
    在用js扩展之前整个也面只有120k。用了js扩展后只有40k 。
    我还是比较喜欢的。你可以拿去稍微修改一下就可以了的。
    希望你喜欢。