`
寄生虫
  • 浏览: 74986 次
  • 性别: Icon_minigender_1
  • 来自: 不让你们知道
文章分类
社区版块
存档分类
最新评论

jQuery模仿ExtJS之TabPanel

阅读更多

 

被copy了,谢谢帮我传播出去啊,嘿嘿,我是有够懒的。

 http://www.web-delicious.com/jquery-plugins-demo/wdScrollTab/docs/index.htm

 

fix_0_1:修改了选项卡内容层的HTML没有设置body backgroundColor时,在FF中透明的BUG;
fix_0_2:添加了窗口resize,TabPanel也随之resize(注:resize触发条件是,TabPanel必须渲染到body上,不设置宽度则会resize宽度,不设置高度则会resize高度);
fix_0_3:可以在任何容器中自动缩放,随父容器大小改变而改变,但必须保证父容器宽度为百分比或高度为百分比,如果选项卡组件实例化时设置了宽度或高度,则不自动改变;
fix_0_4:修正了一些小问题,组件更加稳定和易用;
fix_0_5:有朋友提出需要设置render的宽度和高度,选项卡组件跟随其变化,已经提交;

 

 

 

 

1.帮助: 

TabPanel(选项卡组件)

参数说明

renderTo<string | jQuery object | NULL> 渲染到某容器

将选项卡组件渲染到某容器,参数类型可以为字符串,也可以为jQuery所加载的对象,如果为声明该参数,组件默认的承载容器为BODY

items<array> 选项卡元素集合

选项卡组件渲染后就会显示的选项卡元素集合,具体参数请查看选项卡元素

width<number> 宽度

选项卡组件的总宽度,默认400px

height<number> 高度

选项卡组件中页面显示层的高度,默认300px

border<string> 是否显示边框

嵌套显示选项卡时,会出现重复边框的情况,影响美观,将border设置为”none”,则可以避免,默认显示边框,不接受除”none”之外的参数值。

active<number> 渲染后默认激活哪个选项卡元素

下标以0为开始,默认为0

maxLength<number> 最多显示几个选项卡元素

-1为无限,默认为-1

tabs<return array> 获得选项卡组件所有的选项卡元素

可根据需要获得选项卡组件的所有选项卡元素。

公共方法

addTab(object) 添加一个选项卡元素

动态向选项卡组件中添加一个选项卡元素。

flush(string | number) 刷新选项卡元素的内容

将选项卡元素的内容刷新,参数可以为选项卡元素的ID或下标。

show(string | number) 显示选项卡元素

显示制定选项卡元素,参数可以为选项卡元素的ID或下标。

Kill(string | number) 关闭选项卡元素

关闭选项卡元素,参数可以为选项卡元素的ID或下标。

getTabsCount()<return number> 获得选项卡元素数量

getTitle(string | number) <return string> 获得选项卡元素的标题

setTitle(string | number, string) 设置选项卡元素的标题

getContent(string | number) <return string> 获得选项卡元素的内容

setContent(string | number, string) 设置选项卡元素的内容

getDisable(string | number) <return boolean> 选项卡元素是否禁用

setDisable(string | number) 设置选项卡元素是否禁用

getCloseable(string | number) <return boolean> 选项卡元素是否可关闭

setCloseable(string | number, boolean) 设置选项卡元素是否可关闭

getActiveTab()<return object> 获得被激活的选项卡元素

使用方法

页面引入jQuery.jsTabPanel.jsFader.jsTabPanel.css

new TabPanel({

  renderTo:'tabs',

  width: '100%',

  height: '500px',

  active: 0,

  items: [{

    title:'工作中心',

    html:'<iframe width="100%" height="100%" frameborder="0"></iframe>',

    closable: false

  }]

});

TabPanel item(选项卡元素)

参数说明

id<string> 元素ID

必须唯一,或者不设置该参数,否则将无法添加到选项卡组件中,默认自动生成。

title<string> 元素标题

可以动态设置。

closeable<boolean> 是否可关闭

true可关闭,false不可关闭,默认为true

 

2.效果如图:

 



  

注:

还顺便封装了Toolbar,WindowPanel等控件

 

 



 



 


 

 

 

 

 

 

 

  • 大小: 16.5 KB
  • 大小: 41.6 KB
  • 大小: 41.6 KB
  • 大小: 7 KB
  • 大小: 7 KB
  • 大小: 2.9 KB
  • 大小: 2.9 KB
  • 大小: 2.2 KB
  • 大小: 2.2 KB
  • 大小: 9.4 KB
分享到:
评论
14 楼 skyblue1984 2009-07-09  
很NB   不知道性能如何 感觉应该会很轻量
13 楼 whaosoft 2009-07-08  
是lz山寨的吗 很牛 不过在ie8里还能正常用不
12 楼 viMory 2009-07-08  
我觉得很不错
11 楼 寄生虫 2009-07-08  
huoyan_21 写道
grid 是怎么做的?

其实很简单,grid我并没有封装起来,单只是样式和几句脚本而已。
column是一个table,dataset是一个table,在页面ready之后,设置宽度、计算高度,如果有滚动条就把滚动条的宽度也计算上。
10 楼 寄生虫 2009-07-08  
thinkforever 写道
ext的界面没觉着好看,不要仿了,要仿的话干脆直接用ext了

界面可以随便换的,这问题不大,主要是模仿它所呈现的交互。
9 楼 寄生虫 2009-07-08  
02221021 写道
寄生虫 写道
TabPanel最大,未压缩是23k,其他的都在15k以下,所有都整到一个js中,压缩后预计是30k


23k..有点过了.

主要是注释过多的原因吧,平均每2行代码就有一行注释,方便修改。
8 楼 thinkforever 2009-07-08  
ext的界面没觉着好看,不要仿了,要仿的话干脆直接用ext了
7 楼 flyfan 2009-07-08  
仿的非常像呀,楼主可以用jquery出一个山寨extjs了
6 楼 02221021 2009-07-08  
寄生虫 写道
TabPanel最大,未压缩是23k,其他的都在15k以下,所有都整到一个js中,压缩后预计是30k


23k..有点过了.
5 楼 寄生虫 2009-07-08  
huoyan_21 写道
寄生虫 写道
TabPanel最大,未压缩是23k,其他的都在15k以下,所有都整到一个js中,压缩后预计是30k

那这样再算上jquery,预计就是一个页面需要大约90k?

再gzip一下,会更小的,最起码比起EXT是小了吧(虽然没有EXT那么强大),而且不一定每个页面都引用所有的控件是吧,用到哪个引入哪个,不过这样可能会增加请求的次数。
4 楼 寄生虫 2009-07-08  
TabPanel最大,未压缩是23k,其他的都在15k以下,所有都整到一个js中,压缩后预计是30k
3 楼 寄生虫 2009-07-08  
不是EXT难学,而是遇到一个个性化的功能,需要花费太长时间去扩展,jQuery就不一样了,方便易学。
其实更多的考虑因素是其他技术人员能否快速掌握。
实现TabPanel也只用了2天的时间,学EXT并且可以去重构,那就不是一天两天的事了。
再就是要考虑与现有项目的结合,要迁就老项目。

还是希望能帮忙解决文章一开始提到的问题,谢谢。
2 楼 micki 2009-07-08  
费这事干嘛  直接ExtJS不就得了
再说ExtJS就那么难学吗?
ExtJS提供的不仅仅是组件和UI,而是一整套解决方案
1 楼 makemyownlife 2009-07-08  
界面效果做的和ext很类似,那个选择接受人那块做的听直观的....
学习下....

相关推荐

    jQuery模仿ExtJS之TabPanel最新

    页面引入jQuery.js、TabPanel.js、Fader.js、TabPanel.css new TabPanel({ renderTo:'tabs', width: '100%', height: '500px', active: 0, items: [{ title:'工作中心', ...

    extjs4.2.1 tabPanel刷新及关闭标签

    关闭当前标签页是`TabPanel`常见的需求之一,可以通过如下方式实现: ```javascript onClose: function() { // 获取当前激活的标签项 var item = this.tabPanel.getActiveItem(); // 从 TabPanel 中移除当前...

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

    Extjs4.2 设置tabpanel当前活动页签的样式 Extjs是一个流行的JavaScript框架,用于构建丰富互联网应用程序(RIA)。其中,tabpanel是Extjs中一个常用的控件,用于显示多个面板。设置tabpanel当前活动页签的样式是...

    Ajax(Jquery与ExtJs)

    Ajax(Jquery与ExtJs) 框架对比 web前端开发

    ExtJS TabPanel 标签操作

    在ExtJS中,TabPanel是一个容器,可以包含多个Panel(或称之为卡片),每个Panel对应一个标签页。创建一个基本的TabPanel需要指定` xtype: 'tabpanel' `,并可以通过`items`属性来添加初始的面板。例如: ```...

    Jquery-Extjs4.0框架

    总结来说,Jquery-Extjs4.0框架的结合使用,可以充分利用jQuery的轻便和易用性,以及Ext JS的强大组件和数据管理能力,共同构建出高效、互动性强的前端应用。了解并熟练掌握这两个框架,对于提升前端开发效率和应用...

    ExtJS tabPanel实例

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

    模仿extjs风格写的jquery combobox

    标题中的“模仿extjs风格写的jquery combobox”指的是一个基于jQuery的下拉选择框组件,它的设计灵感来源于ExtJS库的ComboBox控件。ExtJS是一款功能丰富的JavaScript框架,以其强大的组件化和数据绑定机制著名,而...

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

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

    JavaScript框架jQuery和ExtJS的对比研究.pdf

    "JavaScript框架jQuery和ExtJS的对比研究" 本文将对JavaScript框架jQuery和ExtJS进行对比研究,旨在帮助Web开发者选择合适的JavaScript框架。 JavaScript框架的重要性 随着Web 2.0时代的到来,Web应用程序越来越...

    jquery/extjs智能提示所需文件spket.7z

    在IT行业中,jQuery和ExtJS是两种非常流行的JavaScript库,用于构建交互式和动态的Web应用程序。它们都提供了丰富的功能,如DOM操作、事件处理、AJAX交互以及UI组件等,极大地简化了前端开发工作。这里提到的"jquery...

    浅谈JavaScript库——jQuery,ExtJs的对比研究.pdf

    jQuery是目前最流行的JavaScript库之一,由John Resig创建于2006年。jQuery的特点是轻量级、快速、灵活、跨浏览器兼容性强。jQuery提供了大量的插件和扩展,可以满足大多数Web开发需求。jQuery的优点是易于使用、...

    jQuery和ExtJs代码提示spket插件的下载和使用说明

    **jQuery和ExtJS代码提示Spket插件的下载与使用指南** 在开发JavaScript应用程序时,尤其是在使用特定框架如jQuery和ExtJS时,拥有一个能够提供代码提示和自动完成功能的工具是极其重要的。Spket IDE是一款针对...

    浅谈JavaScript 库———jQuery, ExtJs 的对比研究

    ### 浅谈JavaScript库——jQuery与ExtJs的对比研究 #### 一、引言 随着Web 2.0和RIA(Rich Internet Applications)技术的普及,JavaScript作为一种前端开发的重要工具,逐渐占据了重要的地位。它不再仅仅是用于...

    jQuery EasyUI仿Extjs界面

    尽管两者在定位上有所不同,jQuery EasyUI 通过其简洁的API和较低的学习曲线,为开发者提供了一种仿制ExtJS界面效果的方式。 在"jQuery EasyUI 仿 Extjs 界面布局"中,主要涉及以下知识点: 1. **布局管理**:...

    SSH2框架+jQuery+ExtJs+MySql数据库的购物网站

    该项目使用SSH2框架+jQuery+ExtJs+MySql数据库+MyEclipse开发环境。1、设计构思 将订单模块分成管理员和顾客两个管理部分: 管理员:可以查看所有的订单,对已付款的订单进行发货,查看订单详情,按不同方式查询订单...

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

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

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

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

    JAVASCRIPT DIV 弹层(模仿EXTJS)

    为了模仿EXTJS的弹层效果,我们还需要实现层上弹层的功能。这可以通过设置Div的`z-index`属性来实现,数值越大,层的位置越靠前: ```css #popup { position: absolute; /* 或者 fixed,根据需求选择 */ z-index:...

    EsayUI、Jquery、ExtJS等JS库中所用图标及界面图标选择功能

    EsayUI、jQuery和ExtJS都是广泛使用的JavaScript库,它们提供了丰富的功能来构建交互式的Web应用程序。其中,图标作为用户界面的重要元素,对于提升用户体验和美观度起着关键作用。本文将探讨如何在这些JS库中实现...

Global site tag (gtag.js) - Google Analytics