jQuery Tab插件 用于在Tab中显示iframe,附源码和详细(2)

<script type="text/javascript">
var tabs = ('#tabs').cleverTabs();
var tab = tabs.getTabByUrl('https://www.jb51.net');
//参数true为禁用,false或不提供值为启用
tab.setDisable(true);
</script>


CleverTab.setLock方法:
设置该Tab的locked属性,设置locked为true后,该Tab的不允许关闭

复制代码 代码如下:

<script type="text/javascript">
var tabs = ('#tabs').cleverTabs();
var tab = tabs.getTabByUrl('https://www.jb51.net');
//参数true为锁定,false或不提供值为解锁
tab.setLock(true);
</script>


------------------------------2011.06.27 更新---------------------------------
"改变不了别人,就改变自已吧"
在现在的页面中,多数情况下都可能由几部分组成,比如:Banner,Navigator,Content等,而为了工作区域变的更大,很多时候诸如Banner,Navigator或者其他的Panel都会收起来(Collapse),这个时候问题来了,当初我给tabs定义了width: 80%; height: 90%; 现在tabs的width和height发生了变化,可是内部的Tab页面还没有收到这个变化,它还是按照之前的size显示呢,更要命的是resize事件居然只有window和body才有,div居然不支持此事件!真不知道他们是怎么想的...在之前的cleverTabs中,我绑定了window.resize事件,但是问题在于我上面举的例子中,window的size实际上没有发生变化,甚至body也没有,但是tabs的大小发生变化了,在这种情况下,如果您使用了默认的tabPenelContainer,那一定得处理tabs的resize事件,可是tabs就是一个div嘛,哪来的resize?昨晚在睡前突然想到个办法,既然能"改变不了别人,就改变自已",那么就能"自已处理不了的事,就交给别人去处理吧"。把resize“外包”出去算了。于是对原来的代码做了修改,在CleverTabs构造函数中,为CleverTabs的prototype添加了resizePanelContainer函数,tabs自已不知道发生了resize事件,但总归有人知道发生了,谁知道谁调用,所谓的能者多劳?
CleverTabs.resizePanelContainer方法:
当使用CleverTabs默认的PanelContainer时,重新设置PanelContainer的size。

复制代码 代码如下:


<script type="text/javascript">
var tabs;
$(function () {
tabs = $('#tabs').cleverTabs();
$(window).bind('resize', function () {
//当发生window.resize事件时,重新默认的tabs的PanelContainer的大小
tabs.resizePanelContainer();
});
</script>


演示
源码下载  /201106/yuanma/CleverTabs.rar

您可能感兴趣的文章:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wdfwwy.html