CSS+JS实现兼容性很好的无限级下拉菜单

 
  1. <!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.1//EN""http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
  2. <htmlxmlns="http://www.w3.org/1999/xhtml"xml:lang="en">
  3. <head>
  4. <title>CSS+JS实现兼容性很好的无限级下拉菜单</title>
  5. <styletype="text/css">
  6. *{margin:0;padding:0;border:0;}
  7. body{font:12px/130%verdana,geneva,arial,helvetica,sans-serif,宋体;}li{list-style:none;}
  8. .clearfix:after{content:"";display:block;height:0;clear:both;visibility:hidden;}.clearfix{display:inline-block;}
  9. a:link{color:#000;text-decoration:none;}
  10. a:visited{color:#000;text-decoration:none;}
  11. a:hover{color:#000;text-decoration:none;}
  12. .menu{width:778px;height:26px;background:#fff;margin:0auto;}
  13. .menusel{float:left;width:100px;position:relative;height:25px;background:#ddd;line-height:25px;margin-left:1px;*margin-left:0px;_margin-left:-1px;}
  14. .menuselh2{font-size:12px;}
  15. .menusela{display:block;text-align:center;width:100px;border:1pxsolid#a4a4a4;height:25px;border-bottom:1pxsolid#a4a4a4;position:relative;z-index:2;}
  16. .menusela:hover{border:1pxsolid#a4a4a4;border-bottom:1pxdashed#eeeeee;position:relative;z-index:2;height:25px;}
  17. .ahovera{border-bottom:1pxdashed#eeeeee;background:#eeeeee;}
  18. .position{position:absolute;z-index:1;}
  19. .menuselul{width:125px;background:#eee;border:1pxsolid#a4a4a4;margin-top:-1px;position:relative;z-index:1;display:none;}
  20. .menusel.block{display:block;}
  21. .typeulli{border-bottom:1pxdashed#a4a4a4;width:125px;position:relative;float:left;}
  22. .typeullia{border:none;width:125px;}
  23. .typeullia:hover{border:none;background:#ddd;}
  24. .typeul{margin-left:0;}
  25. .typeulul{left:125px;top:0;position:absolute;}
  26. .fli{margin-left:-1px;border-left:#eeeeeesolid1px;}
  27. .menusel.lli{border:none;}
  28. </style>
  29. <scripttype="text/javascript">document.execCommand("BackgroundImageCache",false,true);</script><!--IE6背景图片闪烁问题-->
  30. </head>
  31. <body>
  32. <divclass="menu">
  33. <divid="menu1"class="menusel">
  34. <h2><ahref="/">菜单1</a></h2>
  35. <divclass="position">
  36. <ulclass="clearfixtypeul">
  37. <li><ahref="http://www.33567.cn">菜单选项1-2</a></li>
  38. <li>
  39. <ahref="#">菜单选项1-2</a>
  40. <ul>
  41. <liclass="fli"><ahref="#">菜单选项1-2-1</a></li>
  42. <liclass="lli"><ahref="#">菜单选项1-2-2</a></li>
  43. </ul>
  44. </li>
  45. <li><ahref="http://www.7caidy.com">菜单选项1-2</a></li>
  46. <liclass="lli"><ahref="#">菜单选项1-2</a></li>
  47. </ul>
  48. </div><!--position-->
  49. </div><!--menusel-->
  50. <divid="menu2"class="menusel">
  51. <h2><ahref="#">菜单2</a></h2>
  52. <divclass="position">
  53. <ulclass="clearfixtypeul">
  54. <li><ahref="#">菜单选项2-2</a></li>
  55. <li><ahref="#">菜单选项2-2</a>
  56. <ul>
  57. <liclass="fli"><ahref="#">菜单选项2-2-1</a></li>
  58. <liclass="lli"><ahref="#">菜单选项2-2-2</a>
  59. <ul>
  60. <liclass="fli"><ahref="#">菜单选项2-2-1</a></li>
  61. <liclass="lli"><ahref="#">菜单选项2-2-2</a>
  62. </li>
  63. </ul>
  64. </li>
  65. </ul>
  66. </li>
  67. <li><ahref="#">菜单选项2-2</a></li>
  68. <liclass="lli"><ahref="#">菜单选项2-2</a></li>
  69. </ul>
  70. </div><!--position-->
  71. </div><!--menusel-->
  72. <divid="menu3"class="menusel">
  73. <h2><ahref="#">菜单3</a></h2>
  74. <divclass="position">
  75. <ulclass="clearfixtypeul">
  76. <li><ahref="#">菜单选项3-2</a></li>
  77. <li><ahref="#">菜单选项3-2</a>
  78. <ul>
  79. <liclass="fli"><ahref="#">菜单选项3-2-1</a></li>
  80. <liclass="lli"><ahref="#">菜单选项3-2-2</a>
  81. <ul>
  82. <liclass="fli"><ahref="#">菜单选项3-2-1</a></li>
  83. <liclass="lli"><ahref="#">菜单选项3-2-2</a>
  84. <ul>
  85. <liclass="fli"><ahref="#">菜单选项3-2-1</a></li>
  86. <liclass="lli"><ahref="#">菜单选项3-2-2</a></li>
  87. </ul>
  88. </li>
  89. </ul>
  90. </li>
  91. </ul>
  92. </li>
  93. <li><ahref="#">菜单选项3-2</a></li>
  94. <liclass="lli"><ahref="#">菜单选项3-2</a></li>
  95. </ul>
  96. </div><!--position-->
  97. </div><!--menusel-->
  98. </div><!--menu-->
  99. <scripttype="text/javascript">
  100. for(varx=1;x<4;x++)
  101. {
  102. varmenuid=document.getElementById("menu"+x);
  103. menuid.num=x;
  104. type();
  105. }
  106. functiontype()
  107. {
  108. varmenuh2=menuid.getElementsByTagName("h2");
  109. varmenuul=menuid.getElementsByTagName("ul");
  110. varmenuli=menuul[0].getElementsByTagName("li");
  111. menuh2[0].onmouseover=show;
  112. menuh2[0].onmouseout=unshow;
  113. menuul[0].onmouseover=show;
  114. menuul[0].onmouseout=unshow;
  115. functionshow()
  116. {
  117. menuul[0].className="clearfixtypeulblock"
  118. }
  119. functionunshow()
  120. {
  121. menuul[0].className="typeul"
  122. }
  123. for(vari=0;i<menuli.length;i++)
  124. {
  125. menuli[i].num=i;
  126. varliul=menuli[i].getElementsByTagName("ul")[0];
  127. if(liul)
  128. {
  129. typeshow()
  130. }
  131. }
  132. functiontypeshow()
  133. {
  134. menuli[i].onmouseover=showul;
  135. menuli[i].onmouseout=unshowul;
  136. }
  137. functionshowul()
  138. {
  139. menuli[this.num].getElementsByTagName("ul")[0].className="block";
  140. }
  141. functionunshowul()
  142. {
  143. menuli[this.num].getElementsByTagName("ul")[0].className="";
  144. }
  145. }
  146. </script>
  147. </body>
  148. </html>

本文出自 “阿凡达” 博客,请务必保留此出处http://shamrock.blog.51cto.com/2079212/815559

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值