本系列只列出一些常用的属性、事件或方法,具体完整知识请查看API文档

Menu(菜单)

菜单组件通常用于快捷菜单。他是构建其他菜单组件的必备基础组件。比如:menubutton和splitbutton。它还可以用于导航和执行命令。

1.通过标签创建菜单,给<div/>标签添加一个名为'easyui-menu'的类ID。每个菜单项都通过<div/>标签创建。我们可以添加'iconCls'属性来给菜单项定义一个图标显示到菜单项的左侧。添加'menu-sep'类ID菜单项将会生成一个菜单分割线。
  1. <div id="mm" class="easyui-menu" style="width:120px;">
  2. <div>New</div>
  3. <div>
  4. <span>Open</span>
  5. <div style="width:150px;">
  6. <div><b>Word</b></div>
  7. <div>Excel</div>
  8. <div>PowerPoint</div>
  9. </div>
  10. </div>
  11. <div data-options="iconCls:'icon-save'">Save</div>
  12. <div class="menu-sep"></div>
  13. <div>Exit</div>
  14. </div>
2.使用Javascript显示菜单项
  1. $(document).on('contextmenu',function(e){
  2. e.preventDefault();
  3. //右键菜单显示要通过show方法
  4. $("#menu-mm").menu('show',{
  5. left:e.pageX,
  6. top:e.pageY,
  7. });
  8. $("#menu-mm").menu({
  9. onClick:function(item){
  10. alert(item.name);
  11. }
  12. });
  13. });

菜单方法

方法名 方法参数 描述
options none 返回属性对象。
show pos 显示菜单到指定的位置。'pos'参数有2个属性:
left:新的左边距位置。
top:新的上边距位置。
hide none 隐藏菜单。
destroy none 销毁菜单。
getItem itemEl 获取指定的菜单项。得到的是一个菜单项的DOM元素。下面的例子展示了如何根据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];  // 获取菜单项
var item = $('#mm').menu('getItem', itemEl);
console.log(item);
setText param 设置指定菜单项的文本。'param'参数包含2个属性:
target:DOM对象,要设置值的菜单项。
text: 字符串,要设置的新文本值。

代码示例:

var item = $('#mm').menu('findItem', '保存');
$('#mm').menu('setText', {
target: item.target,
text: '修改'
});
setIcon param 设置指定菜单项图标。'param'参数包含2个属性:
target:DOM对象,要设置的菜单项。
iconCls:新的图标CSS类ID。

代码示例:

$('#mm').menu('setIcon', {
target: $('#m-open')[0],
iconCls: 'icon-closed'
});
findItem text 查找的指定菜单项,返回的对象和getItem方法是一样的。

代码示例:

// 查找“打开”项并禁用它
var item = $('#mm').menu('findItem', '打开');
$('#mm').menu('disableItem', item.target);
appendItem options 追加新的菜单项,'options'参数代表新菜单项属性。默认情况下添加的项在菜单项的顶部。追加一个子菜单项,'parent'属性应该设置指定的父项元素,并且该父项元素必须是已经定义在页面上的。

代码示例:

// 追加一个顶部菜单
$('#mm').menu('appendItem', {
text: '新菜单项',
iconCls: 'icon-ok',
onclick: function(){alert('提示:新菜单项!')}
});
// 追加一个子菜单项
var item = $('#mm').menu('findItem', '打开'); // 查找“打开”项
$('#mm').menu('appendItem', {
parent: item.target, // 设置父菜单元素
text: '打开Excel文档',
iconCls: 'icon-excel',
onclick: function(){alert('提示:打开Excel文档!')}
});
removeItem itemEl 移除指定的菜单项。
enableItem itemEl 启用菜单项。
disableItem itemEl 禁用菜单项。

MenuButton(菜单按钮)

菜单按钮是下拉菜单的一部分。它伴随着linkbutton和menu组件。在用户点击linkbutton之前菜单是隐藏的,当用户用鼠标点击或移动到linkbutton上面的时候菜单才会显示。

 
1.通常菜单按钮通过标签创建
  1. <a href="javascript:void(0)" id="mb" class="easyui-menubutton"
  2. data-options="menu:'#mm',iconCls:'icon-edit'">Edit</a>
  3. <div id="mm" style="width:150px;">
  4. <div data-options="iconCls:'icon-undo'">Undo</div>
  5. <div data-options="iconCls:'icon-redo'">Redo</div>
  6. <div class="menu-sep"></div>
  7. <div>Cut</div>
  8. <div>Copy</div>
  9. <div>Paste</div>
  10. <div class="menu-sep"></div>
  11. <div data-options="iconCls:'icon-remove'">Delete</div>
  12. <div>Select All</div>
  13. </div>
2.使用Javascript创建菜单按钮
  1. <a href="javascript:void(0)" id="mb">Edit</a>
  2. <div id="mm" style="width:150px">
  3. ...
  4. </div>
  1. $('#mb').menubutton({
  2. iconCls: 'icon-edit',
  3. menu: '#mm'
  4. });

属性

菜单按钮属性扩展自linkbutton(按钮),菜单按钮新增的属性如下:

属性名 属性值类型 描述 默认值
plain boolean 为true时显示简易效果。 true
menu string 用来创建一个对应菜单的选择器。 null
duration number 定义鼠标划过按钮时显示菜单所持续的时间,单位为毫秒。 100

SplitButton(分割按钮)

类似菜单按钮,分割按钮也与linkbutton和菜单有关系。menubutton和splitbutton之间的区别是,splitbutton分为两部分。它只会在鼠标移动到splitbutton按钮右边的时候才会显示出“分割线”。

1.使用标签创建分割按钮。

  1. <a href="javascript:void(0)" id="sb" class="easyui-splitbutton"
  2. data-options="menu:'#mm',iconCls:'icon-ok'" onclick="javascript:alert('ok')">Ok</a>
  3. <div id="mm" style="width:100px;">
  4. <div data-options="iconCls:'icon-ok'">Ok</div>
  5. <div data-options="iconCls:'icon-cancel'">Cancel</div>
  6. </div>
2.使用Javascript创建分割按钮。
  1. <a href="javascript:void(0)" id="sb" onclick="javascript:alert('ok')>Ok</a>
  2. <div id="mm" style="width:100px;">
  3. ...
  4. </div>
  1. $('#sb').splitbutton({
  2. iconCls: 'icon-ok',
  3. menu: '#mm'
  4. });

属性

分割按钮属性扩展自linkbutton,分割按钮新增的属性如下:

属性名 属性值类型 描述 默认值
plain boolean 设置为true将显示简洁效果。 true
menu string 用来创建一个对应菜单的选择器。 null
duration number 定义鼠标划过按钮时显示菜单所持续的时间,单位为毫秒。 100

实例代码下载

EasyUI笔记(四)菜单和按钮的更多相关文章

  1. 菜单和按钮-EasyUI Menu 菜单、EasyUI Linkbutton 链接按钮、EasyUI Menubutton 菜单按钮、EasyUI Splitbutton 分割按钮

    EasyUI Menu 菜单 通过 $.fn.menu.defaults 重写默认的 defaults. 菜单(Menu)通常用于上下文菜单.它是创建其他菜单组件(比如:menubutton.spli ...

  2. 第二百零七节,jQuery EasyUI,MenuButton(菜单按钮)组件

    jQuery EasyUI,MenuButton(菜单按钮)组件 学习要点: 1.加载方式 2.属性列表 3.方法列表 本节课重点了解 EasyUI 中 MenuButton(菜单按钮)组件的使用方法 ...

  3. EasyUI学习之menu and button(菜单和按钮)

    前言 今天下午的天气感觉格外的气闷,整个人有一种黏糊糊的感觉,格外的不舒服.加之立即要放假了了,感觉自己全然坐不住呢(节前综合症么).只是学习还是的继续的. 原定计划这篇文章本来应该是关于search ...

  4. bootstrap基础学习【菜单、按钮、导航】(四)

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  5. 关于Eclipse插件开发(四)-------给视图加下拉菜单和按钮和加入编辑器.

    本例将给视图加入下拉菜单和按钮,同时再为列表添加一个右键菜单. 创建ActionGroup类 加入菜单和按钮的方法与SWT和JFace组件的一样,先创建一个ActionGroup代码如下: MyAct ...

  6. IOS学习笔记(四)之UITextField和UITextView控件学习

    IOS学习笔记(四)之UITextField和UITextView控件学习(博客地址:http://blog.csdn.net/developer_jiangqq) Author:hmjiangqq ...

  7. 第二百零六节,jQuery EasyUI,Menu(菜单)组件

    jQuery EasyUI,Menu(菜单)组件 学习要点: 1.加载方式 2.菜单项属性 3.菜单属性 4.菜单事件 5.菜单方法 本节课重点了解 EasyUI 中 Menu(菜单)组件的使用方法, ...

  8. jEasyUI 菜单与按钮

    jQuery EasyUI 菜单与按钮 – 创建简单的菜单 <div id="mm" class="easyui-menu" style="wi ...

  9. Android快乐贪吃蛇游戏实战项目开发教程-05虚拟方向键(四)四个三角形按钮

    该系列教程概述与目录:http://www.cnblogs.com/chengyujia/p/5787111.html 一.如何判断点击的是哪个方向键按钮 在上篇教程中我们实现了左边的三角形按钮效果, ...

  10. 基于 SailingEase WinForm Framework 开发客户端程序(3:实现菜单/工具栏按钮的解耦及状态控制)

    本系列文章将详细阐述客户端应用程序的设计理念,实现方法. 本系列文章以  SailingEase WinForm Framework 为基础进行设计并实现,但其中的设计理念及方法,亦适用于任何类型的客 ...

随机推荐

  1. linux 内存使用分析

      查看当前内存使用情况,最常用的指令就是 [root@t ~]# free -m total used free shared buffers cached Mem: -/+ buffers/cac ...

  2. 死磕mysql

    数据库创建语句 create database new; 创建一个名为new 的数据库 drop database new; 删除名为new的数据库 数据库名为小写,当初教我的那个人对我说在某个系统中 ...

  3. [C/C++]_[Unicode转Utf8,Ansi转Unicode,Ansi文件转Utf8文件]

    http://blog.csdn.net/infoworld/article/details/15337665 场景: 1.也就只有windows需要那么麻烦,还搞一个ANSI编码.学学mac os ...

  4. .Net Core中IOC容器的使用

    打代码之前先说一下几个概念,那就是什么是IOC.DI.DIP 虽然网上讲这些的已经有很多了,我这里还是要再赘述一下 IOC容器就是一个工厂,负责创建对象的 IOC控制反转:只是把上端对下端的依赖,换成 ...

  5. qt creator源码全方面分析(2-10-5)

    目录 The Plugin Manager, the Object Pool, and Registered Objects 插件管理器 对象池和已注册对象 The Plugin Manager, t ...

  6. k8s系列---StorageClass

    介绍这个概念前,需要提前知道存储卷pv/pvc之类的概念. 之前的文章有关于EFK日志系统的介绍,里面的环境是测试环境,完全按照教程一步步的操作,甚至注释掉了持久化存储,当真正线上部署时,又抓虾,打开 ...

  7. hive on spark 编译时遇到的问题

    1.官方网站下载spark 1.5.0的源码 2.根据官方编译即可. export MAVEN_OPTS="-Xmx2g -XX:MaxPermSize=512M -XX:ReservedC ...

  8. Mysql 初始化 及 密码管理

    安装好mysql后,第一次初始化数据库 前言:启动mysql数据库最好不要使用root用户,而是使用mysql用户启动 官方解释: (永远不要使用root帐号启动MySQL Server.这样做很危险 ...

  9. linux中的正则表达式知识梳理

    1. 正则表达式 1.1 正则表达式使用 正则表达式是开发者为了处理大量的字符串和文本而定义的一套规则和方法,使用正则表达式可以提高效率,快速获取想要的内容. 正则表达式常用于linux三剑客grep ...

  10. CoreLocation在iOS8上用法的变化

    1.在使用CoreLocation前需要调用如下函数[iOS8专用]: iOS8对定位进行了一些修改,其中包括定位授权的方法,CLLocationManager增加了下面的两个方法: (1)始终允许访 ...