文档章节

easyui扩展tabs

沉默的懒猫
 沉默的懒猫
发布于 2016/06/20 11:22
字数 234
阅读 32
收藏 0
(function () {
   $.extend($.fn.tabs.methods, {
        getTabById: function(jq,id) {
            var tabs = $.data(jq[0], 'tabs').tabs;
            for(var i=0; i<tabs.length; i++){
                var tab = tabs[i];
                if (tab.panel('options').id == id){
                    return tab;
                }
            }
            return null;
        },
        selectById:function(jq,id) {
            return jq.each(function() {
                var state = $.data(this, 'tabs');
                var opts = state.options;
                var tabs = state.tabs;
                var selectHis = state.selectHis;
                if (tabs.length == 0) {return;}
                var panel = $(this).tabs('getTabById',id); // get the panel to be activated 
                if (!panel){return}
                var selected = $(this).tabs('getSelected');
                if (selected){
                    if (panel[0] == selected[0]){return}
                    $(this).tabs('unselect',$(this).tabs('getTabIndex',selected));
                    if (!selected.panel('options').closed){return}
                }
                panel.panel('open');
                var title = panel.panel('options').title;        // the panel title 
                selectHis.push(title);        // push select history 
                var tab = panel.panel('options').tab;        // get the tab object 
                tab.addClass('tabs-selected');
                // scroll the tab to center position if required. 
                var wrap = $(this).find('>div.tabs-header>div.tabs-wrap');
                var left = tab.position().left;
                var right = left + tab.outerWidth();
                if (left < 0 || right > wrap.width()){
                    var deltaX = left - (wrap.width()-tab.width()) / 2;
                    $(this).tabs('scrollBy', deltaX);
                } else {
                    $(this).tabs('scrollBy', 0);
                }
                $(this).tabs('resize');
                opts.onSelect.call(this, title, $(this).tabs('getTabIndex',panel));
            });
        },
        existsById:function(jq,id){
            return $(jq[0]).tabs('getTabById',id) != null;
        }
    });
})(jQuery);

判断

var isOpen = $('#tabs').tabs('existsById', node.id);
		if (isOpen) {
			$('#tabs').tabs('selectById', node.id);
			var tab = $('#tabs').tabs('getTabById', node.id);
			tab.panel('refresh');
			return;
		}

 

© 著作权归作者所有

共有 人打赏支持
沉默的懒猫
粉丝 8
博文 97
码字总数 36067
作品 0
海淀
程序员
私信 提问
jQuery-EasyUI 1.2.3 发布

Current Version: 1.2.3 ChangeLog: Bug window: Cannot resize the window with iframe content. fixed. tree: The node will be removed when dragging to its child. fixed. combogrid: T......

ejzhang
2011/04/26
6.1K
3
jQuery EasyUI 1.2.5 发布

jQuery EasyUI 1.2.5 发布了,该版本主要改进: Bug: tabs: When add a new tab panel with href property, the content page is loaded twice. fixed. form: Failed to call 'load' method......

ejzhang
2011/12/09
4.4K
8
Jquery easyui中tabs新建标签设置href会提交两次请求

Jquery easyui 1.2.4中tabs新建标签设置href会提交两次请求,这个问题应该说是个挺严重的bug,换用1.2.3版本就没有这个问题。猜想easyui是修改了panel的加载机制或缓存机制吧,总之在options...

乌鸦FB
2012/03/27
0
0
jQuery EasyUI使用教程之创建标签页

<jQuery EasyUI最新版下载> 本教程将展示如何使用easyui创建一个标签组件。标签可以动态地添加或删除多个面板,你可以使用标签在同一个页面上显示不同的实体。 标签一次只能显示一个面板,每...

Miss_Hello_World
2015/11/18
0
0
jQuery EasyUI 1.2.5 发布

尽管jQuery EasyUI官网中还没有消息,但是Google Code中已经出现了jQuery EasyUI 1.2.5版本的源码文件。 该版本中主要修复的bug和改进的功能如下: 修复的bug: tabs: When add a new tab p...

小编辑
2011/09/19
5.4K
4

没有更多内容

加载失败,请刷新页面

加载更多

分布式系统关注点—“无状态”详解

一、初识“状态” 我们首先举个例子。 开发 Z 哥对运维 Y 弟喊:“Y 弟,现在系统好卡,刚上了一波活动,赶紧帮我加几台机器上去顶一下。” Y 弟回复说:“没问题,分分钟搞定”。 然后就发现...

微笑向暖wx
8分钟前
0
0
js获取客户端本地ip

使用js获取客户端本地ip,不需要额外引入别的文件 【注:若IE浏览器不进行安全设置,IE浏览器会默认拦截ActiveX控件的使用,将不会返回客户端的IP地址】 下边的代码使用于通用浏览器,但是IE浏...

青衫旧巷
12分钟前
0
0
第四篇:springboot 打成jar包运行

打包成jar包,需要增加maven依赖         <build>            <plugins>                <plugin>                    <groupId>org.spri...

嘴角轻扬30
23分钟前
1
0
scala学习(二)

scala使用 参数类型推断: eclipse集成scala插件: 一些有用的高阶函数: 闭包: 柯里化: indexOf: 集合操作: 不可变的集合: 不可变集合的hashCode,集合改变之后hashCode也会改变: 搞两...

柠檬果过
26分钟前
1
0
VSCode 中支持 .dwt 等文件高亮渲染代码提示方法

点击菜单 文件->首选项->设置 输入如下代码: "files.associations": { "*.dwt": "html"}

晚风0623
28分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部