ExtJS扩展:垂直页签tabPanel

最近在做一个项目时,项目中使用了ExtJS,有些内容要分页签显示,而出于项目要求,页签只能垂直分布,但ExtJS中的TabPanel只能水平显示,搜索了一下Ext论坛,发现有垂直TabPanel的扩展,但垂直tab的页签内容是水平显示的,且页签多了之后也不能通过设置enableScroll属性使其能滚动,为了适应项目的需求,本人对TabPanel进行了扩展,使其支持垂直页签显示,支持页签很多时的滚动。效果如下:

该组件有两种使用方式,一是扩展方式,二是复写方式。其中第一种方式需要引入附件中的TabPanel.js以及ext-patch.css,同时需要将两个图片放在ext-patch.css同目录下,在创建组件时需要创建Ext.ux.TabPanel;
例:
aa = new Ext.ux.TabPanel({
        tabPosition: 'left',
        autoScroll: true,
        deferredRender: false,
        activeTab: 0,
        enableTabScroll: true,
        applyTo: 'aaa',
        items: [
            bb = new Ext.Panel({layout:'fit',
                title:'基础资料',
                iconCls:'aaa',
                closable: true,
                html: '基础资料'
            }),cc = new Ext.Panel({layout:"fit",
                title:"基础资料",
                closable: true,
                html: '基础资料'
            })]
    });

第二种方式需要引入附件中的TabPanel2.js以及ext-patch.css,同时需要将两个图片放在ext-patch.css同目录下,在创建组件时需要创建Ext.TabPanel。
例:
aa = new Ext.TabPanel({
        tabPosition: 'left',
        autoScroll: true,
        deferredRender: false,
        activeTab: 0,
        enableTabScroll: true,
        applyTo: 'aaa',
        items: [
            bb = new Ext.Panel({layout:'fit',
                title:'基础资料',
                iconCls:'aaa',
                closable: true,
                html: '基础资料'
            }),cc = new Ext.Panel({layout:"fit",
                title:"基础资料",
                closable: true,
                html: '基础资料'
            })]
    });

两种使用方式展现效果相同,tabPosition属性同时支持top/right/bottom/left。

附件文件说明:
TabPanel.js 扩展Ext.TabPanel
TabPanel2.js 复写Ext.TabPanel中的相关方法
ext-patch.css 本文组件所使用的css
*.gif 为设置了enableScroll属性时需要的两个滚动按钮图片

你可能感兴趣的:(html,css,ext)