菜單分為簡單菜單和級聯(lián)菜單。簡單菜單適用在手機和平板上,級聯(lián)菜單適用在桌面設備。
在菜單項上添加 disabled 屬性可以禁用一個菜單項。
添加 <li class="mdui-divider"></li> 元素可以添加分隔線。
在 <ul class="mdui-menu"> 元素上添加類 .mdui-menu-cascade 即可使菜單變?yōu)檫m用于桌面設備的級聯(lián)菜單。
通過在 <li class="mdui-menu-item"></li> 元素內再添加菜單的方式可以實現菜單的嵌套,理論上可以支持無限級嵌套。
<span class="mdui-menu-item-helper"></span> 元素為菜單項添加簡短說明。
<span class="mdui-menu-item-more"></span> 元素為菜單項添加一個向右的箭頭,用在含子菜單的菜單項上。
使用該方式無需編寫 JavaScript 代碼。只需在一個起控制作用的元素(例如:按鈕)上添加 mdui-menu="options" 屬性即可。通過自定義屬性調用時,需要額外添加一個 target 參數,用于指定被控制的菜單,它的值為被控制的菜單的 CSS 選擇器。
注意:為了使菜單能正確地定位,菜單和觸發(fā)菜單的元素必須位于同一父元素下的同一級。
實例化組件:
// anchorSelector 表示觸發(fā)菜單的元素的 CSS 選擇器或 DOM 元素
// menuSelector 表示菜單的 CSS 選擇器或 DOM 元素
// options 表示組件的配置參數,見下面的參數列表
var inst = new mdui.Menu(anchorSelector, menuSelector, options);
參數名 | 類型 | 默認值 | 描述 |
position | string | auto | 菜單相對于觸發(fā)它的元素的位置。
|
align | string | auto | 菜單與觸發(fā)它的元素的對其方式。
|
gutter | int | 16 | 菜單與窗口邊框至少保持多少間距,單位為 px。 |
fixed | boolean | false | 菜單的定位方式
|
covered | boolean | auto | 菜單是否覆蓋在觸發(fā)它的元素的上面。
|
subMenuTrigger | string | hover | 子菜單的觸發(fā)方式。
|
subMenuDelay | int | 200 | 子菜單的觸發(fā)延遲時間(單位:毫秒),只有在 subMenuTrigger: hover 時,這個參數才有效。 |
方法名 | 描述 |
open() | 打開菜單。 |
close() | 關閉菜單。 |
toggle() | 切換菜單的打開狀態(tài)。 |
事件 | 描述 | 目標 | 事件 |
open.mdui.menu | 菜單開始打開動畫時,事件將被觸發(fā)。 | <ul class="mdui-menu"></ul> | event.detail.inst:實例 |
opened.mdui.menu | 菜單結束打開動畫時,事件將被觸發(fā)。 | <ul class="mdui-menu"></ul> | event.detail.inst:實例 |
close.mdui.menu | 菜單開始關閉動畫時,事件將被觸發(fā)。 | <ul class="mdui-menu"></ul> | event.detail.inst:實例 |
closed.mdui.menu | 菜單結束關閉動畫時,事件將被觸發(fā)。 | <ul class="mdui-menu"></ul> | event.detail.inst:實例 |
類名 | 效果 |
.mdui-menu | 定義一個菜單組件。 |
.mdui-menu-cascade | 定義級聯(lián)菜單。 |
.mdui-menu-item | 定義菜單項。 |
.mdui-menu-item-icon | 定義菜單圖標。 |
.mdui-menu-item-helper | 定義菜單的幫助文本。 |
.mdui-menu-item-more | 含子菜單的菜單項的向右箭頭。 |
更多建議: