`

ExtJs TabPanel右键功能插件

 
阅读更多

 

下面是ExtJs TabPanel右键功能插件,可以全部关闭Tab,或者关闭除自己的其它Tab,可以关闭当前Tab等功能。

Ext.ux.TabCloseMenu = function(){

    var tabs, menu, ctxItem;

    this.init = function(tp){

        tabs = tp;

        tabs.on('contextmenu', onContextMenu);

    }

 

    function onContextMenu(ts, item, e){

        if(!menu){ // create context menu on first right click

            menu = new Ext.menu.Menu([{

                id: tabs.id + '-close',

                text: syscommon.closetab,

                handler : function(){

                    tabs.remove(ctxItem,false);

                }

            },{

                id: tabs.id + '-close-others',

                text:syscommon.closealltab,

                handler : function(){

                    tabs.items.each(function(item){

                        if(item.closable && item != ctxItem){

                            tabs.remove(item,false);

                        }

                    });

                }

            },{

                id: tabs.id + '-close-all',

                text: syscommon.closeothertab,

                handler : function(){

                    tabs.items.each(function(item){

                        if(item.closable){

                            tabs.remove(item,false);

                        }

                    });

                }

            }]);

        }

        ctxItem = item;

        var items = menu.items;

        items.get(tabs.id + '-close').setDisabled(!item.closable);

        var disableOthers = true;

        tabs.items.each(function(){

            if(this != item && this.closable){

                disableOthers = false;

                return false;

            }

        });

        items.get(tabs.id + '-close-others').setDisabled(disableOthers);

        var disableAll = true;

        tabs.items.each(function(){

            if(this.closable){

                disableAll = false;

                return false;

            }

        });

        items.get(tabs.id + '-close-all').setDisabled(disableAll);

        menu.showAt(e.getPoint());

    }

};

 

 

使用方法很简单:

在TabPanel上加上这句,plugins : new Ext.ux.TabCloseMenu()

分享到:
评论
3 楼 lyndon.lin 2012-02-23  
这个只在IE和FireFox测试过,其它的浏览器倒没有测试过。
2 楼 沙舟狼客 2012-02-20  
不能用,浏览器chrome,其他没有测试
1 楼 libixionglbx 2011-11-21  
不好用啊楼主

相关推荐

    解决EXTJS4.2的tabpanel右键关闭的BUG

    EXTJS4.2官网上的tabpanel的右键关闭当前页,关闭其它,关闭全部有一点小BUG。 修改TabCloseMenu.js文件的一下函数。 压缩文件里面就是修改过后的TabCloseMenu.js文件,只要替换当前4.2的那个文件就可以使用了!

    ExtJS TabPanel 标签操作

    在本主题中,我们将深入探讨如何操作ExtJS的TabPanel,包括创建、添加、删除和切换标签页,以及自定义菜单等高级功能。 首先,让我们了解TabPanel的基本结构。在ExtJS中,TabPanel是一个容器,可以包含多个Panel...

    extjs4.2.1 tabPanel刷新及关闭标签

    ### ExtJS 4.2.1 TabPanel 刷新与关闭标签功能详解 #### TabPanel 组件简介 在ExtJS框架中,`TabPanel`组件是一个非常实用且强大的UI控件,它允许用户在一个界面上组织多个相关的视图或面板,并通过标签页的形式...

    ExtJS tabPanel实例

    在ExtJS中,`tabPanel` 是一个非常重要的组件,它允许你在一个容器内创建多个标签页,每个标签页可以承载不同的内容,提供了类似桌面应用的用户体验。在实际开发中,`tabPanel` 经常被用来组织和展示复杂的信息。 `...

    Extjs4.2 设置tabpanel当前活动页签的样式

    Extjs4.2 设置tabpanel当前活动页签的样式 Extjs是一个流行的JavaScript框架,用于构建丰富互联网应用程序...开发者可以使用CSS样式表或Extjs的JavaScript API来实现这一功能,从而提高应用程序的可用性和美观性。

    extjs动态添加tabpanel标签页支持pannel嵌入

    extjs动态添加tabpanel标签页支持pannel嵌入 逻辑代码在 MyWindow.js里面直接调用 方法 就可以

    ExtJS TabPanel beforeremove beforeclose使用说明

    在ExtJS中,TabPanel是常用的组件,用于展示多个面板(Panel)并提供标签页切换功能。当用户尝试关闭TabPanel中的某个Panel时,我们可能需要执行一些验证或确认操作,例如弹出对话框询问用户是否真的要关闭当前页面...

    Extjs4.2 根据不同的数值设置tabpanel行的背景颜色

    ### Extjs4.2 根据不同的数值设置 TabPanel 行的背景颜色 #### 一、引言 在Web应用程序开发中,为了提高用户体验并使数据呈现更加直观易懂,开发者常常需要根据数据的不同状态来调整UI元素的样式。例如,在使用...

    ExtJs grid行 右键菜单的两种方法

    在ExtJs中,创建一个Grid并为其添加右键菜单是常见的需求...总的来说,ExtJs提供了灵活的方式来实现Grid的右键菜单功能,为用户提供更丰富的交互体验。通过以上两种方法,你可以根据项目的具体需求选择适合的实现方式。

    Eclipse安装Extjs3.2的spket插件(附插件和Ext文件)

    在本文中,我们将详细介绍如何在Eclipse环境中安装适用于ExtJS 3.2的Spket插件,以便于JavaScript开发和代码提示。首先,让我们了解一下Eclipse、ExtJS和Spket这三个关键概念。 Eclipse是一款开源的集成开发环境...

    ExtJs搜索控件、插件

    5. **插件(Plugins)**:在ExtJS中,插件(`Ext.plugin.*`)用于扩展组件的功能。搜索插件可能包括对搜索历史的管理、多条件搜索支持、高亮匹配结果等特性。`SearchField.js`可能就包含了一个这样的插件,为搜索控件...

    extjs4打印grid插件

    总的来说,"extjs4打印grid插件"是ExtJS4开发中非常实用的一个工具,它为Grid Panel提供了方便的打印功能,极大地丰富了用户体验,特别是在数据报告和数据分析场景中。通过深入理解和使用这个插件,开发者可以更好地...

    EXTJS4.1计算器插件

    由于开发WEB需要一个WEB计算器插件,在网上找EXTJS4计算器插件没有一个,找extjs4.0计算器找到一个,但由于代码太多,在主界面上写太多代码,自我感觉以后看起来吃力,思路一下子不好摸到。因此写了这个插件,分享给...

    jQuery模仿ExtJS之TabPanel最新

    TabPanel(选项卡组件) 参数说明 renderTo| jQuery object | NULL> 渲染到某容器 将选项卡组件渲染到某容器,参数类型可以为字符串,也可以为jQuery所加载的对象,如果为声明该参数,组件默认的承载容器为BODY。 ...

    js jquery extjs myeclipse 代码提示插件安装及安装步骤

    js jquery extjs myeclipse 代码提示插件安装及安装步骤js jquery extjs myeclipse 代码提示插件安装及安装步骤js jquery extjs myeclipse 代码提示插件安装及安装步骤js jquery extjs myeclipse 代码提示插件安装及...

    extjs插件开发教程

    在ExtJS中,插件(Plugin)是一种增强或扩展组件(Component)功能的方式。本教程将深入探讨如何开发ExtJS插件,以及通过实例来理解插件的运用。 首先,我们要明白什么是ExtJS插件。插件是包含特定功能的一段代码,...

    ExtJs GridPanel双击事件获得双击的行

    在ExtJs中,GridPanel是用于展示数据的常用组件,它可以提供丰富的功能,如排序、分页、筛选等。在实际应用中,我们经常需要监听用户的交互行为,比如双击行进行进一步的操作。本篇文章将深入讲解如何在ExtJs ...

    ExtJS 自定义树组件 节点的操作 搜索 右键菜单

    功能: 1.实现ExtJS tree 节点右键菜单 实现增删查. 2.实现针对实体数据的动态搜索. 3.代码命名规范,简单易懂. 4.支持IE 9,FF 19.0.2. 5.将文件解压至ext包example任意组件文件夹即可浏览效果.

    Extjs相关插件

    ExtJS 插件(Plugins)是扩展框架功能的一种方式,它们为内置组件或布局添加额外的功能或行为。插件通常包含一组特定的配置选项,允许开发者定制其功能以满足项目需求。通过引入插件,开发者可以避免重复造轮子,...

    extjs2.0.2及eclipse插件spket

    首先,ExtJS是一个基于JavaScript的开源库,它提供了一套完整的用户界面组件和框架,用于创建功能丰富的、交互性强的Web应用程序。ExtJS 2.0.2是该框架的一个较早版本,虽然现在已经有更新的版本,但在当时,它已经...

Global site tag (gtag.js) - Google Analytics