jQuery EasyUI 菜单与按钮插件 - Menu 菜单

jQuery EasyUI 教程 · 2019-04-07 14:37:26

通过 $.fn.menu.defaults 重写默认的 defaults。

码单(Menu)通常用于上下文码单。它是创建其他码单组件(比如:menubutton、splitbutton)的基础组件。它也能用于导航和执行命令。

用法

创建码单(Menu)

通过标记创建码单(menu)应该添加 'easyui-menu' class 到 <div> 标记。每个码单项(menu item)通过 <div> 标记创建。我们可以添加 'iconCls' 属性到码单项(menu item),以定义一个显示在码单项(menu item)左边的图标。添加 'menu-sep' class 到码单项(menu item)将产生一个码单(menu)分隔符。

<div id="mm" class="easyui-menu" style="width:120px;">
    <div>New</div>
    <div>
        <span>Open</span>
        <div style="width:150px;">
            <div><b>Word</b></div>
            <div>Excel</div>
            <div>PowerPoint</div>
        </div>
    </div>
    <div data-options="iconCls:'icon-save'">Save</div>
    <div class="menu-sep"></div>
    <div>Exit</div>
</div>

编程创建码单(menu)并侦听 'onClick' 事件。

$('#mm').menu({
    onClick:function(item){
        //...
    }
});

显示码单(Menu)

当码单(menu)被创建时,它是隐藏不可见的。调用 'show' 方法来显示码单(menu)。

$('#mm').menu('show', {
    left: 200,
    top: 100
});

码单项

码单项(menu item)代表一个显示在码单中的单独的项目。它包含下列属性:

名称 类型 描述 默认值
id string 码单项(menu item)的 id 属性。
text string 项目文本。
iconCls string 在项目左边显示一个 16x16 图标的 CSS class。
href string 当点击码单项(menu item)时设置页面位置。
disabled boolean 定义是否禁用码单项(menu item)。 false
onclick function 当点击码单项(menu item)时被调用的函数。

码单属性

名称 类型 描述 默认值
zIndex number 码单(Menu)的 z-index 样式,从它开始增加。 110000
left number 码单(Menu)的左边位置。 0
top number 码单(Menu)的顶部位置。 0
minWidth number 码单(Menu)的最小宽度。该属性自版本 1.3.2 起可用。 120
hideOnUnhover boolean 如果设置为 true,当鼠标离开它时自动隐藏码单(menu)。该属性自版本 1.3.5 起可用。 true

码单事件

名称 参数 描述
onShow none 当码单(menu)显示之后触发。
onHide none 当码单(menu)隐藏之后触发。
onClick item 当点击码单项(menu item)时触发。下面的实例演示如何处理所有码单项点击:
<div class="easyui-menu" data-options="onClick:menuHandler" style="width:120px;">
    <div data-options="name:'new'">New</div>
    <div data-options="name:'save',iconCls:'icon-save'">Save</div>
    <div data-options="name:'print',iconCls:'icon-print'">Print</div>
    <div class="menu-sep"></div>
    <div data-options="name:'exit'">Exit</div>
</div>
<script type="text/javascript">
    function menuHandler(item){
        alert(item.name)
    }
</script>

码单方法

名称 参数 描述
options none 返回选项(options)对象。
show pos 在指定的位置显示码单(menu)。
pos 参数有两个属性:
left:新的左边位置。
top:新的顶部位置。
hide none 隐藏码单(menu)。
destroy none 销毁码单(menu)。
getItem itemEl 获取包含 'target' 属性(指示项目 DOM 元素)的码单项(menu item)属性。下面的实例演示如何通过 id 获取指定的项目:
<div id="mm" class="easyui-menu" style="width:120px">
    <div>New</div>
    <div id="m-open">Open</div>
    <div>Save</div>
</div>

var itemEl = $('#m-open')[0];  // the menu item element
var item = $('#mm').menu('getItem', itemEl);
console.log(item);
setText param 给指定的码单项(menu item)设置文本。'param' 参数包含两个属性:
target:DOM 对象,被设定的码单项(menu item)。
text:string,新的文本值。

代码实例:
var item = $('#mm').menu('findItem', 'Save');
$('#mm').menu('setText', {
    target: item.target,
    text: 'Saving'
});
setIcon param 给指定的码单项(menu item)设置图标。'param' 参数包含两个属性:
target:DOM 对象,即码单项(menu item)。
iconCls:新图标的 CSS class。

代码实例:
$('#mm').menu('setIcon', {
    target: $('#m-open')[0],
    iconCls: 'icon-closed'
});
findItem text 找到指定的码单项(menu item),返回对象与 getItem 方法相同。
代码实例:
// find 'Open' item and disable it
var item = $('#mm').menu('findItem', 'Open');
$('#mm').menu('disableItem', item.target);
appendItem options 追加一个新的码单项(menu item),'param' 参数指示新的项目属性。默认情况下,新增的项目将作为顶级码单项(menu item)。如需追加一个子码单项,需设置 'parent' 属性,用来指示已经有子项目的父项目元素。
代码实例:
// append a top menu item
$('#mm').menu('appendItem', {
    text: 'New Item',
    iconCls: 'icon-ok',
    onclick: function(){alert('New Item')}
});
// append a menu separator
$('#mm').menu('appendItem', {
    separator: true
});
// append a sub menu item
var item = $('#mm').menu('findItem', 'Open');  // find 'Open' item
$('#mm').menu('appendItem', {
    parent: item.target,  // the parent item element
    text: 'Open Excel',
    iconCls: 'icon-excel',
    onclick: function(){alert('Open Excel')}
});
removeItem itemEl 移除指定的码单项(menu item)。
enableItem itemEl 启用码单项(menu item)。
disableItem itemEl 禁用码单项(menu item)。

点击查看所有 jQuery EasyUI 教程 文章: https://www.codercto.com/courses/l/42.html

查看所有标签

数码人类学

数码人类学

[英]丹尼尔·米勒、希瑟·A.霍斯特 / 王心远 / 人民出版社 / 2014-10 / 48.00元

人类学有两大任务,一是理解什么是人,二是理解人性是如何透过多元的文化表现出来。数码科技的蓬勃发展给这两者都带来了新的作用力。《数码人类学》向读者展示了人类与数码科技如何辩证地相互定义。最终我们试图得出一个结论,那便是“数码科技对人类到底意味着什么?” 从社交网站到数字化博物馆;从数字时代政治学到电子商务,浸润式的数码科技,给普通人的生活带来了根本性的改变。仅仅用数据来说明与理解问题显然过于太......一起来看看 《数码人类学》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

MD5 加密
MD5 加密

MD5 加密工具