jQuery下拉菜单演示

这是菜单的内容,用ul标签实现菜单:

  1. <div id="menu">
  2. <ul>
  3. <li><a href="">菜单一</a>
  4.     <ul>
  5.     <li><a href="">子菜单1</a></li>
  6.     <li><a href="">子菜单2</a>
  7.          <ul><li><a href="">子菜单7</a></li></ul>
  8.     </li>
  9.     <li><a href="">子菜单3</a></li>
  10.     </ul>
  11. </li>
  12. <li><a href="">菜单二</a>
  13.     <ul>
  14.     <li><a href="">子菜单4</a></li>
  15.     <li><a href="">子菜单5</a></li>
  16.     <li><a href="">子菜单6</a></li>
  17.     </ul>
  18. </li>
  19. </ul>
  20. </div>

这是CSS控制代码:

  1. ul,ol,li{list-style:none;padding:0px;margin:0px;}
  2. #menu *{line-height:30px;}
  3. #menu a{
  4.     text-decoration:none;
  5.     display:block;
  6. }
  7. #menu ul{
  8.     text-align:left;
  9.     background:#333;
  10. }
  11. #menu .arrow{ /* 菜单项的右侧小箭头  */
  12.     float:right;
  13.     padding-right:5px;
  14. }
  15. #menu>ul{height:30px;} /* 即使没有菜单项也能保持顶级菜单栏的高度。 */
  16. /* 一级菜单 */
  17. #menu>ul>li{
  18.     text-align:center;
  19.     display:inline-block;
  20.     width:80px;
  21. }
  22. #menu>ul>li>a{color:#fff;}
  23. #menu>ul>li:hover{background:#666;}
  24. /* 下拉的菜单栏 */
  25. #menu>ul>li ul{
  26.     display:none;
  27.     width:150px;
  28.     position:absolute;
  29.     background:#c1cd94;
  30.     box-shadow:2px 2px 2px #000;
  31.     -webkit-box-shadow:2px 2px 2px #000;
  32.     -moz-box-shadow:2px 2px 2px #123;
  33. }
  34. /* 下拉菜单的菜单项 */
  35. #menu>ul>li>ul li{padding-left:5px; position:relative;}
  36. #menu>ul>li>ul li>a{color:#000;}
  37. #menu>ul>li>ul li:hover{background:#d3dbb3;}
  38. /* 三级及以下的菜单项的定位 */
  39. #menu>ul>li>ul>li ul{left:150px; top:0px;}

这是JS的控制代码:

  1. $(document).ready(function()
  2. {
  3.     /* 菜单初始化 */
  4.     $('#menu>ul>li>ul').find('li:has(ul:not(:empty))>a').append("<span class='arrow'>></span>"); // 为有子菜单的菜单项添加'>'符号
  5.     $("#menu>ul>li").bind('mouseover',function() // 顶级菜单项的鼠标移入操作
  6.     {
  7.       $(this).children('ul').slideDown('fast');
  8.     }).bind('mouseleave',function() // 顶级菜单项的鼠标移出操作
  9.     {
  10.       $(this).children('ul').slideUp('fast');
  11.     });
  12.     $('#menu>ul>li>ul li').bind('mouseover',function() // 子菜单的鼠标移入操作
  13.     {
  14.         $(this).children('ul').slideDown('fast');
  15.     }).bind('mouseleave',function() // 子菜单的鼠标移出操作
  16.     {
  17.         $(this).children('ul').slideUp('fast');
  18.     });
  19. });
原文地址:https://www.cnblogs.com/huhai/p/1902848.html