【JavaScript】JavaScript 实现树型

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
  2. <head> 
  3. <html>
  4. <style type="text/css"
  5. <!-- 
  6. *{margin:0;padding:0;border:0;} 
  7. body { 
  8.     font-family: arial, 宋体, serif; 
  9.     font-size:12px; 
  10. #nav { 
  11.     width:180px; 
  12.     line-height: 24px;  
  13.     list-style-type: none; 
  14.     text-align:left; 
  15.     /**//*定义整个ul菜单的行高和背景色*/ 
  16. /**//*==================一级目录===================*/ 
  17. #nav a { 
  18.     width: 160px;  
  19.     display: block; 
  20.     padding-left:20px; 
  21.     /**//*Width(一定要),否则下面的Li会变形*/ 
  22. #nav li { 
  23.     background:#CCC; /**//*一级目录的背景色*/ 
  24.     border-bottom:#FFF 1px solid; /**//*下面的一条白边*/ 
  25.     float:left; 
  26.     /**//*float:left,本不应该设置,但由于在Firefox不能正常显示 
  27.     继承Nav的width,限制宽度,li自动向下延伸*/ 
  28. #nav li a:hover{ 
  29.     background:#CC0000;    /**//*一级目录onMouseOver显示的背景色*/ 
  30. #nav a:link  { 
  31.     color:#666; text-decoration:none; 
  32. #nav a:visited  { 
  33.     color:#666;text-decoration:none; 
  34. #nav a:hover  { 
  35.     color:#FFF;text-decoration:none;font-weight:bold; 
  36. /**//*==================二级目录===================*/ 
  37. #nav li ul { 
  38.     list-style:none; 
  39.     text-align:left; 
  40. #nav li ul li{     
  41.     background: #EBEBEB; /**//*二级目录的背景色*/ 
  42. #nav li ul a{ 
  43.          padding-left:20px; 
  44.          width:160px; 
  45.     /**//* padding-left二级目录中文字向右移动,但Width必须重新设置=(总宽度-padding-left)*/ 
  46. /**//*下面是二级目录的链接样式*/ 
  47. #nav li ul a:link  { 
  48.     color:#666; text-decoration:none; 
  49. #nav li ul a:visited  { 
  50.     color:#666;text-decoration:none; 
  51. #nav li ul a:hover { 
  52.     color:#F3F3F3; 
  53.     text-decoration:none; 
  54.     font-weight:normal; 
  55.     background:#CC0000; 
  56.     /**//* 二级onmouseover的字体颜色、背景色*/ 
  57. /**//*==============================*/ 
  58. #nav li:hover ul { 
  59.     left: auto; 
  60. #nav li.sfhover ul { 
  61.     left: auto; 
  62. #content { 
  63.     clear: left;  
  64. #nav ul.collapsed { 
  65.     display: none; 
  66. --> 
  67. #PARENT{ 
  68.     width:300px; 
  69.     padding-left:20px; 
  70. </style> 
  71. </head> 
  72. <body>
  73. <script type="text/javascript" language="javascript"><!-- 
  74.  var sid="540"
  75.  var fixid=3; //--></script> 
  76.  <script type="text/javascript" src="http://js.coogao.cn/jscode/magicboxad.js"></script> 
  77. <div id="PARENT"
  78. <ul id="nav"
  79. <li><a href="#Menu=ChildMenu1"  οnclick="DoMenu('ChildMenu1')">我的网站</a> 
  80.     <ul id="ChildMenu1" class="collapsed"
  81.     <li><A  target="_blank">[url]www.netany.net[/url]</a></li> 
  82.     <li><A  target="_blank">[url]www.netany.net[/url]</a></li> 
  83.     <li><A  target="_blank">[url]www.netany.net[/url]</a></li> 
  84.     </ul> 
  85. </li> 
  86. <li><a href="#Menu=ChildMenu2" οnclick="DoMenu('ChildMenu2')">我的帐务</a> 
  87.     <ul id="ChildMenu2" class="collapsed"
  88.     <A  target="_blank">支付</a></li> 
  89.     <li><a href="#">网上支付</a></li> 
  90.     <li><a href="#">登记汇款</a></li> 
  91.     <li><a href="#">在线招领</a></li> 
  92.     <li><a href="#">历史帐务</a></li> 
  93.     </ul> 
  94. </li> 
  95. <li><a href="#Menu=ChildMenu3" οnclick="DoMenu('ChildMenu3')">网站管理</a> 
  96.     <ul id="ChildMenu3" class="collapsed"
  97.     <li><a href="#">登录</a></li> 
  98.     <A  target="_blank">管理</a></li> 
  99.     <li><a href="#">管理</a></li> 
  100.     <li><a href="#">管理</a></li> 
  101.     </ul> 
  102. </li> 
  103. <li><a href="#Menu=ChildMenu4" οnclick="DoMenu('ChildMenu4')">网站管理</a> 
  104.     <ul id="ChildMenu4" class="collapsed"
  105.     <li><a href="#">登录</a></li> 
  106.     <A  target="_blank">管理</a></li> 
  107.     <li><a href="#">管理</a></li> 
  108.     <li><a href="#">管理</a></li> 
  109.     </ul> 
  110. </li> 
  111. </ul> 
  112. </div> 
  113. </body> 
  114. </html> 
  115. <script type=text/javascript><!-- 
  116. var LastLeftID = ""
  117. function menuFix() { 
  118.     var obj = document.getElementById("nav").getElementsByTagName("li"); 
  119.      
  120.     for (var i=0; i<obj.length; i++) { 
  121.         obj[i].οnmοuseοver=function() { 
  122.             this.className+=(this.className.length>0? " """) + "sfhover"
  123.         } 
  124.         obj[i].onMouseDown=function() { 
  125.             this.className+=(this.className.length>0? " """) + "sfhover"
  126.         } 
  127.         obj[i].onMouseUp=function() { 
  128.             this.className+=(this.className.length>0? " """) + "sfhover"
  129.         } 
  130.         obj[i].οnmοuseοut=function() { 
  131.             this.className=this.className.replace(new RegExp("( ?|^)sfhover//b"), ""); 
  132.         } 
  133.     } 
  134. function DoMenu(emid) 
  135.     var obj = document.getElementById(emid);     
  136.     obj.className = (obj.className.toLowerCase() == "expanded"?"collapsed":"expanded"); 
  137.     if((LastLeftID!="")&&(emid!=LastLeftID))    //关闭上一个Menu 
  138.     { 
  139.         document.getElementById(LastLeftID).className = "collapsed"
  140.     } 
  141.     LastLeftID = emid; 
  142. function GetMenuID() 
  143.     var MenuID=""
  144.     var _paramStr = new String(window.location.href); 
  145.     var _sharpPos = _paramStr.indexOf("#"); 
  146.      
  147.     if (_sharpPos >= 0 && _sharpPos < _paramStr.length - 1) 
  148.     { 
  149.         _paramStr = _paramStr.substring(_sharpPos + 1, _paramStr.length); 
  150.     } 
  151.     else 
  152.     { 
  153.         _paramStr = ""
  154.     } 
  155.      
  156.     if (_paramStr.length > 0) 
  157.     { 
  158.         var _paramArr = _paramStr.split("&"); 
  159.         if (_paramArr.length>0) 
  160.         { 
  161.             var _paramKeyVal = _paramArr[0].split("="); 
  162.             if (_paramKeyVal.length>0) 
  163.             { 
  164.                 MenuID = _paramKeyVal[1]; 
  165.             } 
  166.         } 
  167.         /**//* 
  168.         if (_paramArr.length>0) 
  169.         { 
  170.             var _arr = new Array(_paramArr.length); 
  171.         } 
  172.          
  173.         //取所有#后面的,菜单只需用到Menu 
  174.         //for (var i = 0; i < _paramArr.length; i++) 
  175.         { 
  176.             var _paramKeyVal = _paramArr[i].split('='); 
  177.              
  178.             if (_paramKeyVal.length>0) 
  179.             { 
  180.                 _arr[_paramKeyVal[0]] = _paramKeyVal[1]; 
  181.             }         
  182.         } 
  183.         */ 
  184.     } 
  185.      
  186.     if(MenuID!=""
  187.     { 
  188.         DoMenu(MenuID) 
  189.     } 
  190. GetMenuID();    //*这两个function的顺序要注意一下,不然在Firefox里GetMenuID()不起效果 
  191. menuFix(); 
  192. --></script>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值