本系列只列出一些常用的属性、事件或方法,具体完整知识请查看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. hadoop-2.10.0安装hive-2.3.6

    公司建立数仓,hive是必不可少的,hive是建立在hadoop基础上的数据库,前面已经搭建起了hadoop高可用,要学习hive,先从搭建开始,下面梳理一下hive搭建过程 1.下载hive安装包 ...

  2. linux 修改系统时间 同步网络时间

    一.date命令 date -s time  修改系统时钟时间为time 设置时间和日期 例如:将系统日期设定成2018年6月8日的命令 命令 : "date -s 06/08/2018&q ...

  3. f(n)=1-1/2+1/3-1/4...+1/n

    #include <stdio.h>//f(n)=1+1/1+1/2+1/3+...+1/n int main(){ int n,i; double sum=0.0; scanf(&quo ...

  4. java上传组件commons-fileupload的一些使用方法

    在 http://www.apache.org,下载commons-fileupload-1.2.1.jar包,并把这个包加到工程中,以下是记录这个上传组件的一些使用方法. html测试页面,实现上传 ...

  5. SpringMVC 进阶

    请求限制 一些情况下我们可能需要对请求进行限制,比如仅允许POST,GET等... RequestMapping注解中提供了多个参数用于添加请求的限制条件 value 请求地址 path 请求地址 m ...

  6. python学习记录(二)

    0824--https://www.cnblogs.com/fnng/archive/2013/02/24/2924283.html 如果需要写一个非常非常长的字符串,它需要跨多行,那么,可以使用三个 ...

  7. POJ_1050_最大子矩阵

    http://poj.org/problem?id=1050 这道题是最大子串的扩展,遍历过每一个子矩阵就好了,期间用了最大子串的方法. #include<iostream> #inclu ...

  8. Codeforces_712_B

    http://codeforces.com/problemset/problem/712/B 水,判断奇偶即可. #include<iostream> #include<string ...

  9. STM32片外SRAM作运行内存

    本例演示用的软硬件: 片内外设驱动库:STM32CubeF41.24.1的HAL库1.7.6,2019年4月12日 IDE:MDK-ARM 5.28.0.0,2019年5月 开发板:片外SRAM挂在F ...

  10. 【redis】-- redis的持久化(作为数据库)

    目录 1.RDB rdb持久化的方式 rdb方式的优点: aof的优点 3.持久化的其他特性 日志重写 工作原理 rdb和aof混合使用 redis是一个基于内存的数据库,故在redis正在运行的数据 ...