2016-11-09 233 views
1

當我點擊身體或導航欄時,如何關閉下拉菜單消失?Bootstrap下拉 - 點擊後消失

它應該在bootstrap的js文件中,我該怎麼辦?

HTML代碼:

<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> 
     <ul class="nav navbar-nav"> 
     <li class="active"><a href="#">Link <span class="sr-only">(current)</span></a></li> 
     <li><a href="#">Link</a></li> 
     <li class="dropdown"> 
      <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Dropdown <span class="caret"></span></a> 
      <ul class="dropdown-menu" role="menu"> 
      <li><a href="#">Action</a></li> 
      <li><a href="#">Another action</a></li> 
      <li><a href="#">Something else here</a></li> 
      <li class="divider"></li> 
      <li><a href="#">Separated link</a></li> 
      <li class="divider"></li> 
      <li><a href="#">One more separated link</a></li> 
      </ul> 
     </li> 
     </ul> 
    </div> 

感謝這麼多的幫助。

回答

1

這裏是解決方案:

//Attaching event handler to .dropdown selector. 
$('.dropdown').on({ 

    //fires after dropdown is shown instance method is called.(if you click //anywhere else) 
    "shown.bs.dropdown": function() { this.close= false; }, 

    //when dropdown is clicked 
    "click": function() { this.close= true; }, 

//when close event is triggered 
    "hide.bs.dropdown": function() { return this.close; } 
}); 

我會存入凱爾的解決方案,這裏是他的jsfiddle鏈接: https://jsfiddle.net/KyleMit/ZS4L7/

+0

我應該創建自定義的script.js文件,是嗎? – Giacomo

+0

你需要首先包含jquery,如果你願意,你可以添加自定義的js文件,或者用腳本標籤將它添加到html文件中。但確保你有jquery依賴關心。 。 –

+0

大聲笑沒關係它的引導,我相信你已經有jQuery鏈接:) –