A jQuery menu plugin
(TOC generated by verb using markdown-toc)
Install with npm:
$ npm install metismenu
Install with bower
$ bower install metisMenu
Install with composer
$ composer require onokumus/metismenu:dev-master
See react-metismenu
Install TSD globally using npm:
$ npm install tsd -g
Install metismenu TypeScript definition file
$ tsd install metismenu
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/metisMenu/2.5.2/metisMenu.min.css">
OR
<link rel="stylesheet" href="//cdn.jsdelivr.net/jquery.metisMenu/2.5.2/metisMenu.min.css">
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.2.1/jquery.min.js"></script>
OR ```html <script src="//cdn.jsdelivr.net/jquery/2.2.1/jquery.min.js"></script> ```
<script src="//cdnjs.cloudflare.com/ajax/libs/metisMenu/2.5.2/metisMenu.min.js"></script>
OR ```html <script src="//cdn.jsdelivr.net/jquery.metisMenu/2.5.2/metisMenu.min.js"></script> ```
metisMenu
to unordered list <ul class="metisMenu" id="menu">
</ul>
Be sure to add
aria-expanded
to the elementa
and the followingul
. This attribute explicitly defines the current state of the collapsible element to screen readers and similar assistive technologies. If the collapsible element is closed by default, it should have a value ofaria-expanded="false"
. If you’ve set the collapsible element’s parentli
element to be open by default using theactive
class, setaria-expanded="true"
on the control instead. The plugin will automatically toggle this attribute based on whether or not the collapsible element has been opened or closed.
<ul class="metisMenu" id="menu">
<li class="active">
<a href="#" aria-expanded="true">Menu 1</a>
<ul aria-expanded="true">
...
</ul>
</li>
<li>
<a href="#" aria-expanded="false">Menu 2</a>
<ul aria-expanded="false">
...
</ul>
</li>
...
</ul>
Call the plugin:
$("#menu").metisMenu();
Setting aria-disabled=”true” in the <a>
element as shown will stop metisMenu opening the menu for that particular list. This can be changed dynamically and will be obeyed correctly:
<a href="#" aria-expanded="false" aria-disabled="true">List 1</a>
Type: Boolean
Default: true
For auto collapse support.
$("#menu").metisMenu({
toggle: false
});
Type: String
Default: active
$("#menu").metisMenu({
activeClass: 'active'
});
Type: String
Default: collapse
$("#menu").metisMenu({
collapseClass: 'collapse'
});
Type: String
Default: in
$("#menu").metisMenu({
collapseInClass: 'in'
});
Type: String
Default: collapsing
$("#menu").metisMenu({
collapsingClass: 'collapsing'
});
Type: Boolean
Default: false
For double tap support.
$("#menu").metisMenu({
doubleTapToGo: true
});
Type: Boolean
Default: true
Prevents or allows dropdowns’ onclick events after expanding/collapsing.
$("#menu").metisMenu({
preventDefault: false
});
Event Type | Description |
---|---|
show.metisMenu | This event fires immediately when the _show instance method is called. |
shown.metisMenu | This event is fired when a collapse ul element has been made visible to the user (will wait for CSS transitions to complete). |
hide.metisMenu | This event is fired immediately when the _hide method has been called. |
hidden.metisMenu | This event is fired when a collapse ul element has been hidden from the user (will wait for CSS transitions to complete). |
$ npm install
$ bower install
$ grunt serve
Contains a simple HTML file to demonstrate metisMenu plugin.
|DATE |VERSION |CHANGES|
|————–|————–|———–|
|2016-05-06 |v2.5.2 |fix Menu failed to remove collapsing class|
|2016-05-06 |v2.5.1 |fixed bootstrap conflict|
|2016-03-31 |v2.5.0 |Event support|
|2016-03-11 |v2.4.3 |create meteor package|
|2016-03-04 |v2.4.2 |back to version 2.4.0|
|2016-03-03 |v2.4.1 |Transition element passed to methods (removed)|
|2016-01-25 |v2.4.0 |Support AMD / Node / CommonJS|
|2016-01-08 |v2.3.0 |Adding aria-disabled=true to the link element prevents the dropdown from opening|
|2015-09-27 |v2.2.0 |Events supported & added preventDefault options|
|2015-08-06 |v2.1.0 |RTL & aria-expanded
attribute & TypeScript type definitions support|
|2015-07-25 |v2.0.3 |When the active item has doubleTapToGo should not collapse|
|2015-05-23 |v2.0.2 |fixed|
|2015-05-22 |v2.0.1 |changeable classname support|
|2015-04-03 |v2.0.0 |Remove Bootstrap dependency|
|2015-03-24 |v1.1.3 |composer support|
|2014-11-01 |v1.1.3 |Bootstrap 3.3.0|
|2014-07-07 |v1.1.0 |Add double tap functionality|
|2014-06-24 |v1.0.3 |cdnjs support & rename plugin|
|2014-06-18 |v1.0.3 |Create grunt task|
|2014-06-10 |v1.0.2 |Fixed for IE8 & IE9|
Osman Nuri Okumuş
Copyright © 2016, Osman Nuri Okumuş.ş Released under the MIT license.
This file was generated by verb, v0.9.0, on May 06, 2016.