Javascript-网页编程-DHTML-下拉菜单

列表菜单

1、实现功能:点击菜单,显示菜单下的内容,再次点击,隐藏内容(允许和不允许同时打开多个菜单项)

[java]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. <html>  
  2.   <head>  
  3.     <title>DHTML技术演示---菜单列表1</title>  
  4.      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
  5.      <style type="text/css">  
  6.         /*老版本的IE支持,新版本不支持了 
  7.         dl{ 
  8.             height:18px; 
  9.             overflow:hidden; 
  10.         }*/  
  11.           
  12.         /* 
  13.         ul{ 
  14.             //display:none;//不显示 
  15.             display:block;//块显示 
  16.         } 
  17.         */  
  18.         table {  
  19.             /*border:#ff80ff;*/  
  20.             width:80px;  
  21.         }  
  22.           
  23.         table ul{  
  24.             list-style:none;  
  25.             margin:0px;  
  26.             padding:0px;  
  27.             background-color:#ff8000;  
  28.             display:none;  
  29.         }  
  30.         table td{  
  31.             /*border:#0000ff 1px solid;*/  
  32.             background:#80ff00;  
  33.         }  
  34.           
  35.         table td a:link, table td a:visited{  
  36.             color:#8080c0;  
  37.             text-decoration:none;  
  38.         }  
  39.         table td a:hover{  
  40.             color:#0000ff;;  
  41.         }  
  42.           
  43.         .open{  
  44.             display:block;  
  45.         }  
  46.         .close{  
  47.             display:none;  
  48.         }  
  49.           
  50.      </style>  
  51.        
  52.      <script type="text/javascript">  
  53.         /*当前菜单的开关切换,当点开其他菜单时,此菜单不会关闭 
  54.         function list(node){ 
  55.             var oTdNode = node.parentNode; 
  56.             //alert( oTdNode.nodeName);//TD 
  57.             var oUlNode = oTdNode.getElementsByTagName("ul")[0]; 
  58.             //alert( oUlNode.nodeName);//UL 
  59.             if( oUlNode.className =="open"){ 
  60.                 oUlNode.className ="close"; 
  61.             }else{ 
  62.                 oUlNode.className ="open"; 
  63.             } 
  64.         } 
  65.         */  
  66.         //实现当前菜单开关切换的同时,把其它菜单全部关闭,即只能打开一个菜单  
  67.         function list(node){  
  68.             var oTdNode = node.parentNode;  
  69.             var oUlNode = oTdNode.getElementsByTagName("ul")[0];  
  70.             //获取菜单表格(tableMenu)对象 下的所有 菜单块(Ul)对象  
  71.             var oTableNode = document.getElementById("tableMenu");  
  72.             var arrUlNodes = oTableNode.getElementsByTagName("ul");  
  73.             //遍历所有菜单块(Ul)对象,分别对它进行开关显示设置              
  74.             for(var x=0; x<arrUlNodes.length; x++){  
  75.                 if(arrUlNodes[x]==oUlNode && oUlNode.className!="open"){  
  76.                     oUlNode.className ="open";//等价于:arrUlNodes[x].className ="open";  
  77.                 }else{  
  78.                     arrUlNodes[x].className="close";  
  79.                 }  
  80.             }  
  81.         }  
  82.        
  83.      </script>  
  84.   </head>  
  85.     
  86.   <body>  
  87.     <table id="tableMenu">  
  88.         <tr>  
  89.             <td>  
  90.                 <a href="javascript:void(0)" οnclick="list(this)">文件菜单</a>  
  91.                 <ul>  
  92.                     <li>菜单项一</li>  
  93.                     <li>菜单项二</li>  
  94.                     <li>菜单项三</li>  
  95.                     <li>菜单项四</li>  
  96.                 </ul>  
  97.             </td>  
  98.         </tr>  
  99.         <tr>  
  100.             <td>  
  101.                 <a href="javascript:void(0)" οnclick="list(this)">编辑菜单</a>  
  102.                 <ul>  
  103.                     <li>菜单项一</li>  
  104.                     <li>菜单项二</li>  
  105.                     <li>菜单项三</li>  
  106.                     <li>菜单项四</li>  
  107.                 </ul>  
  108.             </td>  
  109.         </tr>  
  110.         <tr>  
  111.             <td>  
  112.                 <a href="javascript:void(0)" οnclick="list(this)">调试菜单</a>  
  113.                 <ul>  
  114.                     <li>菜单项一</li>  
  115.                     <li>菜单项二</li>  
  116.                     <li>菜单项三</li>  
  117.                     <li>菜单项四</li>  
  118.                 </ul>  
  119.             </td>  
  120.         </tr>  
  121.     </table>  
  122.       
  123.   </body>  
  124.     
  125. </html>  

2、实现功能:鼠标放在菜单条上时,显示菜单块,离开菜单条和菜单块时,隐藏菜单块,且鼠标放的行有颜色变化

[java]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. <html>  
  2. <head>  
  3. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">  
  4. <title>列表菜单</title>  
  5. <style type="text/css">  
  6.     #newsid ul{  
  7.         list-style:none;  
  8.     }  
  9.     #newslist li{  
  10.         float:left;  
  11.         width:180px;  
  12.     }  
  13.     #newslist li ul{  
  14.         margin:0px;  
  15.         padding:0px;  
  16.     }  
  17.     #newslist li ul li{  
  18.         line-height:25px;  
  19.     }  
  20.     #newslist li a{  
  21.         display:block;  
  22.         color:#ffffff;  
  23.         background-color:#0066cc;  
  24.         text-decoration:none;  
  25.         line-height:25px;  
  26.         text-align:center;  
  27.     }  
  28.     #newslist li a:hover{  
  29.         color:#0066cc;  
  30.         background-color:#999999;  
  31.     }  
  32.     #newslist li ul a{  
  33.         color:#000000;  
  34.         background-color:#0099ff;  
  35.     }  
  36.     #newslist li ul li a:hover{  
  37.         color:#0066ff;  
  38.         background-color:#999999;  
  39.     }  
  40.     #newslist li ul{  
  41.         display:none;  
  42.     }  
  43. </style>  
  44. <script type="text/javascript">  
  45.     function list(liNode){  
  46.         var ulNode = liNode.getElementsByTagName("ul")[0];  
  47.         with(ulNode.style){  
  48.             display = display=="block"?"none":"block";  
  49.         }  
  50.     }  
  51. </script>  
  52. </head>  
  53. <body background="bg-img.jpg">  
  54. <!--  制作一个下拉菜单:1)封装数据 2)定义基本样式    -->  
  55. <div id="newsid">  
  56.     <ul id="newslist">  
  57.         <li οnmοuseοver="list(this)"; οnmοuseοut="list(this)" >  
  58.             <a href="javascript:void(0)">城院新闻</a>  
  59.             <ul style="display:none;">  
  60.                 <li><a href="http://www.hncu.net/">校园新闻内容摘要</a></li>  
  61.                 <li><a href="http://www.hncu.net/">校园新闻内容摘要</a></li>  
  62.                 <li><a href="http://www.hncu.net/">校园新闻内容摘要</a></li>  
  63.                 <li><a href="http://www.hncu.net/">校园新闻内容摘要</a></li>  
  64.             </ul>  
  65.         </li>  
  66.         <li οnmοuseοver="list(this)"; οnmοuseοut="list(this)" >  
  67.             <a href="javascript:void(0)">大学新闻</a>  
  68.             <ul style="display:none;">  
  69.                 <li><a href="http://www.hncu.net/">大学新闻内容摘要</a></li>  
  70.                 <li><a href="http://www.hncu.net/">大学新闻内容摘要</a></li>  
  71.                 <li><a href="http://www.hncu.net/">大学新闻内容摘要</a></li>  
  72.                 <li><a href="http://www.hncu.net/">大学新闻内容摘要</a></li>  
  73.             </ul>  
  74.         </li>  
  75.         <li οnmοuseοver="list(this)"; οnmοuseοut="list(this)" >  
  76.             <a href="javascript:void(0)">社会新闻</a>  
  77.             <ul style="display:none;">  
  78.                 <li><a href="http://www.hncu.net/">社会新闻内容摘要</a></li>  
  79.                 <li><a href="http://www.hncu.net/">社会新闻内容摘要</a></li>  
  80.                 <li><a href="http://www.hncu.net/">社会新闻内容摘要</a></li>  
  81.                 <li><a href="http://www.hncu.net/">社会新闻内容摘要</a></li>  
  82.             </ul>  
  83.         </li>  
  84.         <li οnmοuseοver="list(this)"; οnmοuseοut="list(this)" >  
  85.             <a href="javascript:void(0)">就业新闻</a>  
  86.             <ul style="display:none;">  
  87.                 <li><a href="http://www.hncu.net/">就业新闻内容摘要</a></li>  
  88.                 <li><a href="http://www.hncu.net/">就业新闻内容摘要</a></li>  
  89.                 <li><a href="http://www.hncu.net/">就业新闻内容摘要</a></li>  
  90.                 <li><a href="http://www.hncu.net/">就业新闻内容摘要</a></li>  
  91.             </ul>  
  92.         </li>  
  93.           
  94.     </ul>  
  95.       
  96. </div>  
  97.   
  98. </body>  
  99. </html>  



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值