如下代码...
做完后我发现... 还不如记录下新的顺序.然后把tabpanel里面的全部标签页移除,再按新的顺序一个个的加回来...
Ext.onReady(function(){
Ext.BLANK_IMAGE_URL = '/images/s.gif';
Ext.QuickTips.init();
testTabMove();
});
function testTabMove(){
var tab = new Ext.TabPanel({
activeTab:1,
items:[
{title:'xx1',html:'xxx1'},
{title:'xx2',html:'xxx2'},
{title:'xx3',html:'xxx3'},
{title:'xx4',html:'xxx4'},
{title:'xx5',html:'xxx5'}
],
/**
* 返回指定index对应的Panel
* @param {number} index
* @return {Panel}
*/
getTabByIndex:function(index){
return this.items.itemAt(index);
},
/**
* 返回指定index对应的标签页的Element对象
* @param {number} index
* @return {Ext.Element}
*/
getStripByIndex:function(index){
return Ext.get(this.getTabEl(this.getTabByIndex(index)));
},
/**
* 返回指定的panel在tabpanel里面的index
* @param {Ext.Panel} p
* @return {number}
*/
getTabIndex:function(p){
return this.items.indexOf(p);
},
/**
* 把某个Tab向左或向右移动
* @param {string/panel} tab 要移动的tab的panel对象或者它的index
* @param {number} dir 方向,负数为向左,正数为向右
*/
moveTab:function(tab,dir){
var srcIndex = Ext.isNumber(tab) ? tab : this.items.indexOf(tab);
var targetIndex = srcIndex + dir;
if(targetIndex>=0 && targetIndex<this.items.getCount()){
var targetTab = this.items.itemAt(targetIndex);
var targetStrip = Ext.get(this.getTabEl(targetTab));
var srcTab = this.items.itemAt(srcIndex);
var srcStrip = Ext.get(this.getTabEl(srcTab));
//互换item的位置
this.items.items[srcIndex] = targetTab;
this.items.items[targetIndex] = srcTab;
//互换Strip的位置
dir<0 ? srcStrip.insertBefore(targetStrip): srcStrip.insertAfter(targetStrip);
//清理
targetTab=null;
targetStrip=null;
srcTab=null;
srcStrip=null;
tab=null;
}
}
});
var f = new Ext.form.NumberField({value:'1',width:30});
var p = new Ext.Panel({
title:'::移动TabPanel测试::',
items:[tab],
renderTo:document.body,
height:300,
width:500,
tbar:[
'移动距离:',f,'-',{
text:'左移',
handler:function(){
tab.moveTab(tab.getActiveTab(),-1*parseInt(f.getValue()));
}
},{
text:'右移',
handler:function(){
tab.moveTab(tab.getActiveTab(),parseInt(f.getValue()));
}
}
]
})
}
给个截图,免得大漠又说我:
- 大小: 13.7 KB
分享到:
相关推荐
ExtJS的TabPanel是其组件库中的一个核心组件,用于创建具有多个标签页的应用界面,每个标签页可以承载不同的内容。在本主题中,我们将深入探讨如何操作ExtJS的TabPanel,包括创建、添加、删除和切换标签页,以及...
extjs动态添加tabpanel标签页支持pannel嵌入 逻辑代码在 MyWindow.js里面直接调用 方法 就可以
其中, `.x-tab-active` 是Extjs中当前活动页签的CSS类名, `.x-tab-wrap` 是标签页签的容器, `.x-tab-button` 是标签页签的按钮, `.x-tab-inner` 是标签页签的内部容器。 在上面的代码中,我们使用了CSS选择器来...
在ExtJS框架中,`TabPanel`组件是一个非常实用且强大的UI控件,它允许用户在一个界面上组织多个相关的视图或面板,并通过标签页的形式进行切换展示。在版本4.2.1中,`TabPanel`提供了丰富的API和方法来控制其行为,...
在ExtJS中,`tabPanel` 是一个非常重要的组件,它允许你在一个容器内创建多个标签页,每个标签页可以承载不同的内容,提供了类似桌面应用的用户体验。在实际开发中,`tabPanel` 经常被用来组织和展示复杂的信息。 `...
在ExtJS中,TabPanel是常用的组件,用于展示多个面板(Panel)并提供标签页切换功能。当用户尝试关闭TabPanel中的某个Panel时,我们可能需要执行一些验证或确认操作,例如弹出对话框询问用户是否真的要关闭当前页面...
`Ext.TabPanel`允许开发者在单个容器中组织多个面板或视图,每个面板都有自己的标题,并且可以通过标签页进行切换。让我们通过代码示例和详细解释来理解其工作原理。 首先,`Ext.TabPanel`是`Ext.container....
首先,我们需要创建一个tabpanel实例,并配置其属性,如`activeTab`(默认激活的标签页)和`layout`(布局方式,通常为`card`)。 ```javascript Ext.create('Ext.tab.Panel', { renderTo: Ext.getBody(), // ...
EXTJS的tabpanel是其组件库中的一个重要组成部分,用于创建具有多个选项卡的用户界面,每个选项卡代表一个独立的视图或工作区。在EXTJS应用中,tabpanel提供了灵活的布局管理和用户交互功能,使开发者能够构建高效且...
在描述中提到的"ExtJS效果Tabs形式"指的是使用ExtJS实现的标签页(Tabs)布局。这种布局方式在Web应用中非常常见,用于组织和展示多个相关的视图或内容区域。在本文中,我们将深入探讨如何使用ExtJS创建和管理标签页...
4. **模板和数据绑定**:在Web开发中,`TabPanel`的每个标签页可能由模板定义,而模板与数据模型进行绑定。例如,使用Angular或Vue.js时,可以通过数据绑定将JSON对象映射到视图。 5. **源码解析**:在标签中提到了...
在ExtJS中,TabPanel是核心组件之一,用于实现多页面或区域的切换效果,类似于Web应用中的标签页。"Ext的Tab标签封装"指的是使用ExtJS库创建的TabPanel组件,它允许用户在一个区域内通过点击不同的标签来展示不同的...
在ExtJS框架中,TabPanel布局是一种常用的组件布局方式,常用于创建带有多个标签页的应用界面,每个标签页可以承载不同的内容。在这个例子中,开发者使用了Ext3.0版本来构建一个包含多个区域(north, south, east, ...
ExtJS Tab Panel是Ext JS库中的一个核心组件,它用于创建具有多个标签页的应用界面,类似于浏览器中的标签页。在Web应用中,Tab Panel经常被用来组织和展示大量的信息,让用户能够在一个页面上轻松切换不同的内容...
当用户点击TreePanel中的节点时,可以触发事件,切换到对应的TabPanel标签页,或者在当前标签页内更新内容。这样的设计使得用户能够更有效地组织和导航数据。 在测试这种结合使用的情况时,我们需要关注以下几个...
EXTJS4.0.7的TabPanel组件支持这一特性,每个标签页可以包含不同的组件或视图,提供灵活的工作空间管理。开发者可以通过编程或用户交互来添加、删除和切换标签页,提高后台管理的效率和用户体验。 EXTJS4.0.7后台...
在Ext框架中,`TabPanel`是一个非常重要的组件,用于实现页面中的多标签页功能。然而,在实际应用过程中可能会遇到一个常见问题:当某个标签页被关闭后,如果尝试重新打开该标签页,则可能会出现无法正常显示的情况...
标题“ext tab”可能指的是EXTJS库中的TabPanel组件,这是一种在Web应用中常用的功能,用于展示多个视图或页面,用户可以通过标签页在不同内容间切换。EXTJS是一个用JavaScript编写的富客户端UI框架,它提供了丰富的...
在"Extjs 做的treepanel+tab切换页"这个项目中,我们主要关注的是如何利用ExtJS 3.2版本来创建一个具备折叠面板(Collapsible Panel)功能的树形视图(TreePanel),以及与之联动的选项卡(TabPanel)。这个设计允许...