0
0
mirror of https://github.com/twbs/bootstrap.git synced 2024-11-29 11:24:18 +01:00

markdownify js dropdowns

This commit is contained in:
Mark Otto 2014-07-13 00:54:26 -07:00
parent 59c3f4acaf
commit 057d0a00ed

View File

@ -3,13 +3,10 @@ layout: page
title: Dropdowns title: Dropdowns
--- ---
<div class="bs-docs-section"> Add dropdown menus to nearly anything with this simple plugin, including the navbar, tabs, and pills.
<h1 id="dropdowns" class="page-header">Dropdowns <small>dropdown.js</small></h1>
<h2 id="dropdowns-examples">Examples</h2> ### Within navbars
<p>Add dropdown menus to nearly anything with this simple plugin, including the navbar, tabs, and pills.</p>
<h3>Within a navbar</h3>
<div class="bs-example"> <div class="bs-example">
<nav id="navbar-example" class="navbar navbar-default navbar-static" role="navigation"> <nav id="navbar-example" class="navbar navbar-default navbar-static" role="navigation">
<div class="container-fluid"> <div class="container-fluid">
@ -68,7 +65,8 @@ title: Dropdowns
</nav> <!-- /navbar-example --> </nav> <!-- /navbar-example -->
</div> <!-- /example --> </div> <!-- /example -->
<h3>Within pills</h3> ### Within pills
<div class="bs-example"> <div class="bs-example">
<ul class="nav nav-pills" role="tablist"> <ul class="nav nav-pills" role="tablist">
<li role="presentation" class="active"><a href="#">Regular link</a></li> <li role="presentation" class="active"><a href="#">Regular link</a></li>
@ -108,17 +106,21 @@ title: Dropdowns
<li role="presentation"><a role="menuitem" tabindex="-1" href="http://twitter.com/fat">Separated link</a></li> <li role="presentation"><a role="menuitem" tabindex="-1" href="http://twitter.com/fat">Separated link</a></li>
</ul> </ul>
</li> </li>
</ul> <!-- /pills --> </ul>
</div> <!-- /example --> </div>
## Usage
<h2 id="dropdowns-usage">Usage</h2> Via data attributes or JavaScript, the dropdown plugin toggles hidden content (dropdown menus) by toggling the `.open` class on the parent list item.
<p>Via data attributes or JavaScript, the dropdown plugin toggles hidden content (dropdown menus) by toggling the <code>.open</code> class on the parent list item.</p>
<p>On mobile devices, opening a dropdown adds a <code>.dropdown-backdrop</code> as a tap area for closing dropdown menus when tapping outside the menu, a requirement for proper iOS support. <strong class="text-danger">This means that switching from an open dropdown menu to a different dropdown menu requires an extra tap on mobile.</strong></p> On mobile devices, opening a dropdown adds a `.dropdown-backdrop` as a tap area for closing dropdown menus when tapping outside the menu, a requirement for proper iOS support. **This means that switching from an open dropdown menu to a different dropdown menu requires an extra tap on mobile.**
<p>Note: The <code>data-toggle="dropdown"</code> attribute is relied on for closing dropdown menus at an application level, so it's a good idea to always use it.</p>
Note: The `data-toggle="dropdown"` attribute is relied on for closing dropdown menus at an application level, so it's a good idea to always use it.
### Via data attributes
Add `data-toggle="dropdown"` to a link or button to toggle a dropdown.
<h3>Via data attributes</h3>
<p>Add <code>data-toggle="dropdown"</code> to a link or button to toggle a dropdown.</p>
{% highlight html %} {% highlight html %}
<div class="dropdown"> <div class="dropdown">
<button id="dLabel" type="button" data-toggle="dropdown"> <button id="dLabel" type="button" data-toggle="dropdown">
@ -130,7 +132,9 @@ title: Dropdowns
</ul> </ul>
</div> </div>
{% endhighlight %} {% endhighlight %}
<p>To keep URLs intact with link buttons, use the <code>data-target</code> attribute instead of <code>href="#"</code>.</p>
To keep URLs intact with link buttons, use the `data-target` attribute instead of `href="#"`.
{% highlight html %} {% highlight html %}
<div class="dropdown"> <div class="dropdown">
<a id="dLabel" data-target="#" href="http://example.com" type="button" data-toggle="dropdown"> <a id="dLabel" data-target="#" href="http://example.com" type="button" data-toggle="dropdown">
@ -144,25 +148,33 @@ title: Dropdowns
</div> </div>
{% endhighlight %} {% endhighlight %}
<h3>Via JavaScript</h3> ### Via JavaScript
<p>Call the dropdowns via JavaScript:</p>
Call the dropdowns via JavaScript:
{% highlight js %} {% highlight js %}
$('.dropdown-toggle').dropdown() $('.dropdown-toggle').dropdown()
{% endhighlight %} {% endhighlight %}
<div class="bs-callout bs-callout-info"> <div class="bs-callout bs-callout-info">
<h4><code>data-toggle="dropdown"</code> still required</h4> <h4><code>data-toggle="dropdown"</code> still required</h4>
<p>Regardless of whether you call your dropdown via JavaScript or instead use the data-api, <code>data-toggle="dropdown"</code> is always required to be present on the dropdown's trigger element.</p> <p>Regardless of whether you call your dropdown via JavaScript or instead use the data-api, <code>data-toggle="dropdown"</code> is always required to be present on the dropdown's trigger element.</p>
</div> </div>
<h3>Options</h3> ### Options
<p><em>None</em></p>
<h3>Methods</h3> *None.*
<h4>$().dropdown('toggle')</h4>
<p>Toggles the dropdown menu of a given navbar or tabbed navigation.</p> ### Methods
#### $().dropdown('toggle')
Toggles the dropdown menu of a given navbar or tabbed navigation.
### Events
All dropdown events are fired at the `.dropdown-menu`'s parent element.
<h3>Events</h3>
<p>All dropdown events are fired at the <code>.dropdown-menu</code>'s parent element.</p>
<div class="table-responsive"> <div class="table-responsive">
<table class="table table-bordered table-striped"> <table class="table table-bordered table-striped">
<thead> <thead>
@ -190,10 +202,10 @@ $('.dropdown-toggle').dropdown()
</tr> </tr>
</tbody> </tbody>
</table> </table>
</div><!-- ./bs-table-responsive --> </div>
{% highlight js %} {% highlight js %}
$('#myDropdown').on('show.bs.dropdown', function () { $('#myDropdown').on('show.bs.dropdown', function () {
// do something… // do something…
}) })
{% endhighlight %} {% endhighlight %}
</div>