引导程序中的2级下拉菜单仅适用于单击

时间:2013-04-22 17:24:38

标签: twitter-bootstrap drop-down-menu

我试图在没有悬停的情况下强制嵌套下拉菜单。目前,下面的代码仅显示 嵌入式下拉菜单仅在使用悬停激活时启用。我想只通过点击强制它,所以在移动版网站中它会导致任何问题。我想要实现的效果如下:http://www.meanthemes.com/demo/meanmenu/demo.html

方法:

  1. 我尝试将dropdown-toggle置于drop-down-toggle内,但不会显示嵌套下拉列表。

    <div class="nav-collapse collapse">
     <ul class="nav">
    <li class="dropdown"> <a href="#" class="dropdown-toggle" data-toggle="dropdown">Buildings/Land <b class="caret"></b></a>
    <ul class="dropdown-menu">
    
      <li class="dropdown-submenu"><a tabindex="-2" href="#"><img src="icons/huron-river-prot_icon.png" class="icons-images">Huron River Protection</a>
        <ul class="dropdown-menu">
          <li><a href="#"><img src="icons/green-roof_icon.png" class="icons-images">Green Roof</a></li>
          <li><a href="#"><img src="icons/huron-river-prot_icon.png" class="icons-images">Porous pavement</a></li>
          <li><a href="#"><img src="icons/retention-detention_icon.png" class="icons-images">Retention/detention</a></li>
        </ul>
      </li>
    
       </ul>
          </li>         
    </ul>
     </div>
    

1 个答案:

答案 0 :(得分:0)

我做了类似的事情。 我为你创造了一个小提琴:)

HTML非常像你的。我使用jquery来识别第二级菜单,并在单击时打开它们。

     $(document).ready(function(){
     $('.dropdown .dropdown').each(function(){
         var $self = $(this);
         var handle = $self.children('[data-toggle="dropdown"]');
         $(handle).click(function(){
             var submenu = $self.children('.dropdown-menu');
             $(submenu).toggle();
             return false;
         });
     });
 });

我必须在bootstrap之上使用以下CSS,以便第二级菜单打开。

.dropdown-menu .dropdown-menu {
top: 0;
left: 100%;
margin: 0;
padding: 0;
}

http://jsfiddle.net/elewinso/Upmx8/

我希望这会有所帮助。