为EasyUI 的Tab 标签添加右键菜单
近期研究了下MenuButton,有了新的感悟,原先在那个DEMO中右键支持做法,现在看来真是小儿科啊!
前期的准备工作:
1、下载DEMO源码,并升级为最新版本(jquery 1.7.2,Easyui 1.2.6),直接替换就可以啦,升级easyui 是的要把css js theme 全部替换
2、在首页的HTML代码中:将
1 <divid="mm"class="easyui-menu"style="width:150px;"> 2 <divid="mm-tabupdate">刷新</div> 3 <divclass="menu-sep"></div> 4 <divid="mm-tabclose">关闭</div> 5 <divid="mm-tabcloseall">全部关闭</div> 6 <divid="mm-tabcloseother">除此之外全部关闭</div> 7 <divclass="menu-sep"></div> 8 <divid="mm-tabcloseright">当前页右侧全部关闭</div> 9 <divid="mm-tabcloseleft">当前页左侧全部关闭</div> 10 <divclass="menu-sep"></div> 11 <divid="mm-exit">退出</div> 12 </div>
改为:
1 <divid="mm"class="easyui-menu"style="width:150px;"> 2 <divid="refresh">刷新</div> 3 <divclass="menu-sep"></div> 4 <divid="close">关闭</div> 5 <divid="closeall">全部关闭</div> 6 <divid="closeother">除此之外全部关闭</div> 7 <divclass="menu-sep"></div> 8 <divid="closeright">当前页右侧全部关闭</div> 9 <divid="closeleft">当前页左侧全部关闭</div> 10 <divclass="menu-sep"></div> 11 <divid="exit">退出</div> 12 </div>
outlook2.js 中添加新方法如下:
functioncloseTab(action) {var alltabs = $('#tabs').tabs('tabs');var currentTab =$('#tabs').tabs('getSelected');var allTabtitle =[];$.each(alltabs,function(i,n){allTabtitle.push($(n).panel('options').title);})switch(action) {case "refresh":var iframe = $(currentTab.panel('options').content);var src = iframe.attr('src');$('#tabs').tabs('update', {tab: currentTab,options: {content: createFrame(src)}})break;case "close":var currtab_title = currentTab.panel('options').title;$('#tabs').tabs('close', currtab_title);break;case "closeall":$.each(allTabtitle,function(i, n) {if (n !=onlyOpenTitle){$('#tabs').tabs('close', n);}});break;case "closeother":var currtab_title = currentTab.panel('options').title;$.each(allTabtitle,function(i, n) {if (n != currtab_title && n !=onlyOpenTitle){$('#tabs').tabs('close', n);}});break;case "closeright":var tabIndex = $('#tabs').tabs('getTabIndex', currentTab);if (tabIndex == alltabs.length - 1){alert('亲,后边没有啦 ^@^!!');return false;}$.each(allTabtitle,function(i, n) {if (i >tabIndex) {if (n !=onlyOpenTitle){$('#tabs').tabs('close', n);}}});break;case "closeleft":var tabIndex = $('#tabs').tabs('getTabIndex', currentTab);if (tabIndex == 1) {alert('亲,前边那个上头有人,咱惹不起哦。 ^@^!!');return false;}$.each(allTabtitle,function(i, n) {if (i <tabIndex) {if (n !=onlyOpenTitle){$('#tabs').tabs('close', n);}}});break;case "exit":$('#closeMenu').menu('hide');break;} }
将js中tabCloseEven 方法 改为
functiontabCloseEven() {$('#mm').menu({onClick:function(item) {closeTab(item.id);}});return false; }
这样就OK啦,代码比原来优雅多啦!
调用刷新,关闭当前标签时,就调用 closeTab(‘action’) //action 可以为 refresh(刷新),close(关闭)
iframe 中使用时,要这么屎 top.closeTab('action');
熊掌网盘 : 点此下载最新的Easyui应用实例
亲,如果你觉得本文对你有帮助,请帮忙推荐下哦
为EasyUI 的Tab 标签添加右键菜单相关推荐
- EasyUI 的Tab 标签添加右键菜单
样式: 主要提供右键功能代码. (只需要提供你需要的js和css就行了) <!doctype html> <html> <head> <basehref=&q ...
- tkinter向文本框里加内容_给tkinter文本框添加右键菜单
给tkinter文本框添加右键菜单 需求:直接右键点击使用tkinter创建的文本框是不会弹出菜单的.我们需要实现右键点击tkinter框架下的Entry对象.Text对象后弹出右键菜单可复制.粘贴和 ...
- chrome添加右键菜单收藏CSDN文章到我的博客
需求: 看到好的文章时,想收藏,但是chrome的收藏夹不支持搜索(虽然有其他插件可以用),收藏的多了以后不好找,而且万一某一天浏览器或系统重装,而没有登录同步数据或者没有导出由的话这些收藏就会丢失. ...
- win10计算机添加右键菜单,win10怎么添加右键菜单
为了操作方便.快捷,又需要在桌面图标的右键菜单中添加菜单项目,那怎么添加呢?下面学习啦小编整理了解决win10右键菜单如何添加的方法,希望能帮到大家O(∩_∩)O哈哈~ win10右键菜单如何添加的方 ...
- 在(CListView)列表视图中添加右键菜单的方法
使用弹出式菜单(PopMenu) 弹 出式菜单(PopMenu)大家都熟悉,在WIN98的桌面上单击鼠标右键弹出的菜单就是弹出式菜单.通常情况下,弹出式菜单在鼠标右键单击时弹出,当 然,也可以根据需要 ...
- java 右键菜单_界面操作--添加右键菜单
[java]代码库package 添加右键菜单; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; impor ...
- ListCtrl添加右键菜单(ListCtrl类里编辑,给ListCtrl 发送NM_RCLICK消息)
在开发中会用到右键菜单,我们来一起学习一下. 假如,我们现在已经准备好了列表,就差右键处理了. 1.在资源视图中的添加一个MENU,如图 2.给要添加右键菜单的ListCtrl子类,添加消息 按 ct ...
- merlin.acs的使用方法 merlin.acs添加右键菜单
阅读全文:http://www.cckan.net/forum.php?mod=viewthread&tid=39 看看这个怎么样吧 直接看代码吧我就不多说了 1.先下载一下这个控件 吧 网上 ...
- openlayer右键菜单_OpenLayers添加右键菜单
1. 首先修改 OpenLayers Events.js 定位到下面代码段,添加右键菜单事件: View Code OpenLayers.Events = OpenLayers.Class ...
最新文章
- dell服务器 稳定性,设计优秀管理方便 戴尔R710服务器评测
- 联想正遭遇第四道坎 柳传志对症下药
- 搜狗词库爬虫(2):基础爬虫框架的运行流程
- 加载gif_搞笑gif:这啥情况啊?笑容加载不出来了?
- shell+html+div+css实现数据库冷备文件检查
- 360浏览器升级_360安全卫士下载|360安全卫士 12.0 最新版
- oracle范围分区表,Oracle表分区之范围分区-Oracle
- 计算机小知识应用,电脑使用小知识
- 老司机 iOS 周报 #23 | 2018-06-18
- 归纳推理测试没做完_无论顺还是剖,有几件事尽量在生娃当天做完,月子期间基本没负担...
- 什么是类?什么是对象?类与对象之间是什么关系?类的特性有哪些?
- Windows 时间同步出错
- python源码解读之 string.py
- WindowManagerService详述
- bootstrap table
- 黑白和彩色CCD摄像机成像原理简介
- Android cer转bks
- 加解密后字节数组和(16进制)字符串的相互转换问题
- 针对RK3328平台搭建支持KVM的Linux环境
- b 站账号快速升级到 Lv6:每天自动签到,观看,分享,投币视频
热门文章
- 阿里云弹性高性能计算E-HPC强势来袭,全新打造一站式云超算
- BEGINNING SHAREPOINT#174; 2013 DEVELOPMENT 第9章节--client对象模型和REST APIs概览 client对象模型API范围...
- JSONObject中optString和getString等的区别
- 四、物理优化(1)范式化
- Jquey将序列化对象在前台显示地几种方式
- Smark.Data 1.5更新详解
- C# js调用winform方法,C# JS与winform通信
- 自动调试自动编译五分钟上手
- ElasticSearch远程随意代码运行漏洞(CVE-2014-3120)分析
- XidianOJ 1019 自然数的秘密