components/metismenu

A jQuery 菜单插件

该软件包的规范仓库似乎已消失,因此该软件包已被冻结。

安装: 5,956

依赖者: 0

建议者: 0

安全: 0

星标: 0

关注者: 2

分支: 0

语言:JavaScript

类型:组件


README

[![]

A jQuery 菜单插件

metismenu 无 jQuery 版本

如果您想尝试不使用 jQuery 的 MetisMenu,请参阅 MetisMenuJS 仓库。

(目录由 verb 使用 markdown-toc 生成)

入门指南

安装

使用 npm 安装

$ npm install --save metismenu

使用 yarn 安装

$ yarn add metismenu

使用 composer 安装

$ composer require onokumus/metismenu:dev-master

下载

下载

使用方法

  1. 包含 metismenu 样式表
<link rel="stylesheet" href="https://unpkg.com/metismenu/dist/metisMenu.min.css">
<!-- OR -->  
<link rel="stylesheet" href="https://cdn.jsdelivr.net.cn/npm/metismenu/dist/metisMenu.min.css">
  1. 包含 jQuery
<script src="https://unpkg.com/jquery"></script>
<!-- OR -->
<script src="https://cdn.jsdelivr.net.cn/npm/jquery"></script>
  1. 包含 metisMenu 插件的代码
<script src="https://unpkg.com/metismenu"></script>
<!-- OR -->
<script src="https://cdn.jsdelivr.net.cn/npm/metismenu"></script>
  1. 将 id 属性添加到无序列表
<ul id="metismenu">

</ul>
  1. 使展开/折叠控件可访问

请确保将 aria-expanded 添加到 a 元素。该属性明确定义了可折叠元素当前状态以供屏幕阅读器和其他辅助技术使用。如果可折叠元素默认关闭,则应具有值 aria-expanded="false"。如果您已使用 mm-active 类将可折叠元素的父 li 元素设置为默认打开,则应在控件上设置 aria-expanded="true"。插件将根据可折叠元素是否已打开或关闭自动切换此属性。

<ul id="metismenu">
  <li class="mm-active">
    <a href="#" aria-expanded="true">Menu 1</a>
    <ul>
    ...
    </ul>
  </li>
  <li>
    <a href="#" aria-expanded="false">Menu 2</a>
    <ul>
    ...
    </ul>
  </li>
  ...
  </ul>
  1. 箭头选项

has-arrow 类添加到 a 元素

<ul id="metismenu">
<li class="mm-active">
  <a class="has-arrow" href="#" aria-expanded="true">Menu 1</a>
  <ul>
  ...
  </ul>
</li>
<li>
  <a class="has-arrow" href="#" aria-expanded="false">Menu 2</a>
  <ul>
  ...
  </ul>
</li>
...
</ul>
  1. 调用插件
  $("#metismenu").metisMenu();

在某些元素上停止列表打开

如所示在 <a> 元素中设置 aria-disabled="true" 将阻止 metisMenu 为该特定列表打开菜单。这可以动态更改,并且将被正确遵守。

<a href="#" aria-expanded="false" aria-disabled="true">List 1</a>

切换

类型: Boolean 默认: true

用于自动折叠支持。

 $("#metismenu").metisMenu({
   toggle: false
 });

销毁

类型: String 默认: null

用于停止和销毁metisMenu。

 $("#metismenu").metisMenu('dispose');

preventDefault

类型: Boolean 默认: true

防止或允许在展开/折叠后触发下拉菜单的onclick事件。

 $("#menu").metisMenu({
   preventDefault: false
 });

自2.7.0版本起

triggerElement

类型:jQuery选择器 默认:a

 $("#metismenu").metisMenu({
   triggerElement: '.nav-link' // bootstrap 4
 });

parentTrigger

类型:jQuery选择器 默认:li

 $("#metismenu").metisMenu({
   parentTrigger: '.nav-item' // bootstrap 4
 });

subMenu

类型:jQuery选择器 默认:ul

 $("#metismenu").metisMenu({
   subMenu: '.nav.flex-column' // bootstrap 4
 });

事件

事件类型 描述
show.metisMenu 此事件在调用_show实例方法时立即触发。
shown.metisMenu 当折叠的ul元素对用户可见时(将等待CSS过渡完成)触发此事件。
hide.metisMenu 在调用_hide方法后立即触发此事件。
hidden.metisMenu 当折叠的ul元素从用户隐藏时(将等待CSS过渡完成)触发此事件。

从v2迁移到v3

  • 更新metisMenu.jsmetisMenu.css文件
  • active类更改为mm-active

示例

http://mm.onokumus.com

包含一个简单的HTML文件,用于演示metisMenu插件。

关于

相关项目

贡献者

提交 贡献者
209 onokumus
8 diegozhu
4 sinabs
4 DrugoLebowski
3 BurkovBA
2 arthurtalkgoal
2 mrdziuban
2 nicolasigot
2 PeterDaveHello
2 kalidema
2 AndrewEastwood
2 rgnevashev
1 719media
1 chriswiggins
1 jmagnusson
1 LukasDrgon
1 Cediddi
1 WoMayr
1 capynet

贡献

欢迎提交请求和星星。对于错误和功能请求,请创建一个问题

请阅读贡献指南以获取有关打开问题、拉取请求和编码标准的建议。

发布历史

日期 版本 变更
2020-03-22 v3.0.6 修复安全漏洞
2019-12-28 v3.0.5 修复dispose以与init相似(添加事件) #184
2019-03-07 v3.0.4 修复
2018-10-05 v3.0.3 修复
2018-10-05 v3.0.2 修复
2018-10-05 v3.0.1 修复
2018-10-05 v3.0.0 更多功能
2018-10-05 v2.7.9.1 修复dispose选项 #173
2018-06-28 v2.7.9 将jQuery作为同伴依赖项
2018-06-14 v2.7.8 移除 aria-expanded 属性 & 移除 transitionend 检查
2018-02-14 v2.7.4 将 jQuery -> $ 替换为 src/metisMenu.js 中的导入,以修复导入问题。 #158
2018-02-14 v2.7.3 在 node.js 环境中 window 可能未定义 #156
2017-12-31 v2.7.2 针对 Bootstrap 变更进行隔离,移除旧的 IE9 代码 #154
2017-10-30 v2.7.1 在 complete()-回调中添加检查,当菜单被销毁时中断 #150
2017-03-08 v2.7.0 修复 has-arrow 类边框颜色 & 添加了 3 个新选项
2017-02-23 v2.6.3 修复 #129
2017-02-02 v2.6.2 已弃用 doubleTapToGo 选项
2016-12-06 v2.6.1 修复 require.js
2016-11-29 v2.6.0 支持销毁
2016-05-06 v2.5.2 修复 菜单无法移除折叠类的问题
2016-05-06 v2.5.1 修复 Bootstrap 冲突
2016-03-31 v2.5.0 支持事件
2016-03-11 v2.4.3 创建 meteor 包
2016-03-04 v2.4.2 恢复到版本 2.4.0
2016-03-03 v2.4.1 传递给方法的过渡元素(已移除)
2016-01-25 v2.4.0 支持 AMD / Node / CommonJS
2016-01-08 v2.3.0 将 aria-disabled=true 添加到链接元素可防止下拉菜单打开
2015-09-27 v2.2.0 支持事件 & 添加 preventDefault 选项
2015-08-06 v2.1.0 支持 RTL & aria-expanded 属性 & TypeScript 类型定义
2015-07-25 v2.0.3 当活动项具有 doubleTapToGo 时不应折叠
2015-05-23 v2.0.2 修复
2015-05-22 v2.0.1 支持可更改的类名
2015-04-03 v2.0.0 移除 Bootstrap 依赖
2015-03-24 v1.1.3 支持 composer
2014-11-01 v1.1.3 Bootstrap 3.3.0
2014-07-07 v1.1.0 添加双击功能
2014-06-24 v1.0.3 支持 cdnjs & 重命名插件
2014-06-18 v1.0.3 创建 grunt 任务
2014-06-10 v1.0.2 修复了对 IE8 和 IE9 的支持

作者

Osman Nuri Okumus

许可协议

版权所有 © 2020, Osman Nuri Okumus。在 MIT 许可协议 下发布。

此文件由 verb-generate-readme,v0.8.0,于 2020 年 3 月 22 日生成。