Bootstrap Tutorial - Bootstrap DropDowns Event








Bootstrap provides various events attached to the dropdown plugin. They are:

  • show.bs.dropdown: triggered when the handle is just clicked; the dropdown handle has received the request to open the hidden menu
  • shown.bs.dropdown: triggered after the menu is shown
  • hide.bs.dropdown: triggered just before closing the menu
  • hidden.bs.dropdown: triggered when the menu is closed

The show and hide events happen just before completing the request whereas shown and hidden events happen as the request is complete.

<!DOCTYPE html>
<html lang="en">
<head>
<script type='text/javascript'
  src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<link rel="stylesheet"
  href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
<link rel="stylesheet"
  href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap-theme.min.css">
<script
  src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script
  src="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){<!--   w ww .j ava  2 s.co  m-->
    $('.myDropdownHandle').dropdown('toggle');
});
</script>  
</head>
  <body style='margin:30px'>
    <div class="dropdown" id="myDropdown">
        <a class="myDropdownHandle" data-toggle="dropdown" data-target="#" href="#">
            Dropdown <span  class="caret"></span>
        </a>
        <ul class="dropdown-menu">
            <li><a  href="#">Link 1</a></li>
            <li><a  href="#">Link 2</a></li>
            <li><a  href="#">Link 3</a></li>
            <li><a  href="#">Link 4</a></li>
        </ul>
    </div>
    <script type="text/javascript">
    $(document).ready(function(){
    
        $('#myDropdown').on('show.bs.dropdown', function () {
            console.log("Opening dropdown..");
        });
        
        $('#myDropdown').on('shown.bs.dropdown', function () {
            console.log("Dropdown opened..");
        });
        
        $('#myDropdown').on('hide.bs.dropdown', function () {
            console.log("Hiding dropdown..");
        });
        
        $('#myDropdown').on('hidden.bs.dropdown', function () {
            console.log("Dropdown hidden..");
        });
    });
    </script>    
  </body>
</html>

Click to view the demo





$().dropdown('toggle') method can toggle menus for a given navbar or tabbed navigation.

<!--from w  ww  .  j  av  a 2 s  .  c  om-->
<!DOCTYPE html>
<html lang="en">
<head>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap-theme.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/js/bootstrap.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
  $(".dropdown-toggle").dropdown();
});  
</script>
<style type="text/css">
  .bs-example{
      margin: 20px;
    }
</style>
</head>
<body>
<div class="bs-example">
   <div class="dropdown">
        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a>
        <ul class="dropdown-menu">
            <li><a href="#">Action</a></li>
            <li><a href="#">Another action</a></li>
            <li class="divider"></li>
            <li><a href="#">Separated link</a></li>
        </ul>
    </div>
</div>
</body>
</html>

Click to view the demo