Tabs 右键菜单功能实现

前端

   <div id="tabs" class="easyui-tabs" fit="true" border="false"  data-options="tools:'#tab-tools'">
</div> <div id="tab-tools">
<a href="javascript:void(0)" class="easyui-linkbutton" data-options="plain:true,iconCls:'icon-reload'" onclick="reload()"></a>
<a href="javascript:void(0)" class="easyui-linkbutton" data-options="plain:true,iconCls:'icon-delete'" onclick="closecur()"></a>
</div> <div id="mm" class="easyui-menu" style="width:150px;">
<div data-options="iconCls:'icon-reload'" id="refresh">刷新</div>
<div class="menu-sep"></div>
<div data-options="iconCls:'icon-delete0'" id="closecur">关闭当前</div>
<div data-options="iconCls:'icon-delete0'" id="closeall">全部关闭</div>
<div data-options="iconCls:'icon-delete0'" id="closeother">除此之外全部关闭</div>
<div class="menu-sep"></div>
<div data-options="iconCls:'icon-delete0'" id="closeright">当前页右侧全部关闭</div>
<div data-options="iconCls:'icon-delete0'" id="closeleft">当前页左侧全部关闭</div>
</div>

脚本

$(function () {

    $(".tabs-header").bind('contextmenu', function (e) {
e.preventDefault();
$('#mm').menu('show', {
left: e.pageX,
top: e.pageY
});
}); //刷新
$("#refresh").bind("click", function () {
reload();
}) //关闭当前标签页
$("#closecur").bind("click", function () {
closecur();
});
//关闭所有标签页
$("#closeall").bind("click", function () { var tablist = $('#tabs').tabs('tabs');
for (var i = tablist.length - 1; i >= 0; i--) {
$('#tabs').tabs('close', i);
}
});
//关闭非当前标签页(先关闭右侧,再关闭左侧)
$("#closeother").bind("click", function () {
var tablist = $('#tabs').tabs('tabs');
var tab = $('#tabs').tabs('getSelected');
var index = $('#tabs').tabs('getTabIndex', tab);
for (var i = tablist.length - 1; i > index; i--) {
$('#tabs').tabs('close', i);
}
var num = index - 1;
for (var i = num; i >= 0; i--) {
$('#tabs').tabs('close', 0);
}
});
//关闭当前标签页右侧标签页
$("#closeright").bind("click", function () {
var tablist = $('#tabs').tabs('tabs');
var tab = $('#tabs').tabs('getSelected');
var index = $('#tabs').tabs('getTabIndex', tab); for (var i = tablist.length - 1; i > index; i--) {
$('#tabs').tabs('close', i);
}
});
//关闭当前标签页左侧标签页
$("#closeleft").bind("click", function () {
var tab = $('#tabs').tabs('getSelected');
var index = $('#tabs').tabs('getTabIndex', tab);
var num = index - 1;
for (var i = 0; i <= num; i++) {
$('#tabs').tabs('close', 0);
}
}); }); function reload() {
var currentTab = $('#tabs').tabs('getSelected');
var iframe = $(currentTab.panel('options').content);
var src = iframe.attr('src');
$('#tabs').tabs('update', {
tab: currentTab,
options: {
content: '<iframe scrolling="auto" frameborder="0" style="width:100%;height:100%;" src="' + src + '" ></iframe>'
}
})
} function closecur() { var tab = $('#tabs').tabs('getSelected');
var index = $('#tabs').tabs('getTabIndex', tab);
$('#tabs').tabs('close', index);
}

MVC4 +EasyUI Tabs 使用的更多相关文章

  1. 基于MVC4+EasyUI的Web开发框架形成之旅--界面控件的使用

    在前面介绍了两篇关于我的基于MVC4+EasyUI技术的Web开发框架的随笔,本篇继续介绍其中界面部分的一些使用知识,包括控件的赋值.取值.清空,以及相关的使用. 我们知道,一般Web界面包括的界面控 ...

  2. 转--基于MVC4+EasyUI的Web开发框架形成之旅--界面控件的使用

    原文  http://www.cnblogs.com/wuhuacong/p/3317223.html 基于MVC4+EasyUI的Web开发框架形成之旅--界面控件的使用 在前面介绍了两篇关于我的基 ...

  3. (转)基于MVC4+EasyUI的Web开发框架形成之旅--界面控件的使用

    原文地址:http://www.cnblogs.com/wuhuacong/p/3317223.html 在前面介绍了两篇关于我的基于MVC4+EasyUI技术的Web开发框架的随笔,本篇继续介绍其中 ...

  4. 基于MVC4+EasyUI的Web开发框架经验总结(16)--使用云打印控件C-Lodop打印页面或套打报关运单信息

    在最新的MVC4+EasyUI的Web开发框架里面,我整合了关于网购运单处理的一个模块,其中整合了客户导单.运单合并.到货扫描.扣仓.出仓.查询等各个模块的操作,里面涉及到一些运单套打的操作,不过由于 ...

  5. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(23)-设置角色遗留问题和为权限设置角色以及EasyUI Tabs的使用

    ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇)   (1):框架搭建    (2):数据库访问层的设计Demo    (3):面向接口编程   (4 ):业务逻辑层的封装    ...

  6. EF6 CodeFirst+Repository+Ninject+MVC4+EasyUI实践(一)

    前言 本系列源自对EF6 CodeFirst的探索,但后来发现在自己项目中构建的时候遇到了一些问题以及一些解决方法,因此想作为一个系列写下来. 本系列并不是教你怎么做架构设计,但可以参照一下里面的方法 ...

  7. 基于MVC4+EasyUI的Web开发框架经验总结

    http://www.cnblogs.com/wuhuacong/p/4093778.html 在很多Web系统中,一般都可能提供一些图标的选择,方便配置按钮,菜单等界面元素的图 标,从而是Web系统 ...

  8. 基于MVC4+EasyUI的Web开发框架形成之旅--附件上传组件uploadify的使用

    大概一年前,我还在用Asp.NET开发一些行业管理系统的时候,就曾经使用这个组件作为文件的上传操作,在随笔<Web开发中的文件上传组件uploadify的使用>中可以看到,Asp.NET中 ...

  9. 基于MVC4+EasyUI的Web开发框架经验总结(15)--在MVC项目中使用RDLC报表

    RDLC是一个不错的报表,有着比较不错的设计模式和展现效果,在我的Winform开发里面,使用RDLC也是一个比较方便操作,如可以参考文章<DevExpress的XtraReport和微软RDL ...

随机推荐

  1. EasyUI 开发笔记(一)

    由于某些原因,在公司做的后台需要改成类似于Ext.js 形式的后台,主要看好其中的 框架布局,以及tab开页面和弹出式内部窗体. 后来看看,改成EasyUI,较Ext.js 库小很多,也便于公司的初级 ...

  2. CoInitialize浅析二

    最近工作比较忙,在粗略分析了CoInitialize之后我们一直没有再深入研究,下面言归正传.前面我们初步了解到了CoInitialize其实是通过调用CoInitializeEx来实现功能的,而后者 ...

  3. 【JS】HTMLprop与attr的区别

    与prop一样attr也可以用来获取与设置元素的属性.区别在于,对于自定义属性和选中属性的处理.选中属性指的是 checked,selected 这2种属性1. 对于自定义属性 attr能够获取,pr ...

  4. appium 执行demo

    appium很早就了解了,一直没有之际操作过,最近把官网的demo搞下来执行了一遍,还是很有意思的 经过测试是可以跑起来的,不过跑得过程中,输入法需要默认为英文的,如果是中文的码输入的时候有点问题,可 ...

  5. 安装Fedora 24后必要的设置

    安装Fedora 24后必要的设置 导读 Fedora 是一个 Linux 发行版,是一款由全球社区爱好者构建的面向日常应用的快速.稳定.强大的操作系统.它允许任何人自由地使用.修改和重发布,无论现在 ...

  6. ulua 路径小记 以及 lua require 机制整理

    ulua 路径小记 在学习ulua时,require模块的根路径可以为项目的Lua文件夹或者ToLua文件夹(Editor下),但是在package.path和package.cpath中并没有看到当 ...

  7. [非原创]eclipse中一些常见svn图标的含义

    项目视图   The Package Explorer view - 已忽略版本控制的文件.可以通过Window → Preferences → Team → Ignored Resources.来忽 ...

  8. JavaScript变量作用域

    全部变量拥有全局作用域,局部变量拥有局部作用域(这里注意函数的参数也是局部变量) 1.在函数体内,局部变量的优先级高于同名的全局变量. 我的理解就是当你同时定义了同名的局部变量和全局变量时,函数体内返 ...

  9. DOCTYPE声明的作用是什么?严格模式与混杂模式如何区分?

    HTML语言已经存在太久了,目前必然会有一些不同版本的文档存在,为了能够让浏览器清楚你的文档的版本类型和风格,需要在文档的起始用DOCTYPE声明制定当前文档的版本和风格.如果在网页中提供了版本信息, ...

  10. 基于注解的SpringMVC简单介绍

    SpringMVC是一个基于DispatcherServlet的MVC框架,每一个请求最先访问的都是DispatcherServlet,DispatcherServlet负责转发每一个Request请 ...