欢迎使用CleverTabs,作者: think8848(公司主页: http://www.cleversoft.com, QQ: 166156888, Blog: http://think8848.cnblogs.com)       转载请保留此信息

CleverTabs是一款jQuery插件,所需jQuery版本:1.6.1,jQuery UI样式版本:1.8.13;其功能为创建jQuery UI风格的Tab用于显示iframe。

初级应用示例:
html:

<div id="tabs"><ul></ul></div>
javascript:
var tabs; <script type="text/javascript"> $(function () { tabs = $('#tabs').cleverTabs(); tabs.add({ url: 'http://think8848.cnblogs.com', label: 'think8848' }); }); </script>

CleverTabs详细说明:
CleverTabs为所有Tab的容器

var tabs; <script type="text/javascript"> $(function () { tabs = $('#tabs').cleverTabs({ //是否安装右键菜单(默认: true) setupContextMenu: true, //右键菜单定义, 右键菜单功能由jquery.contextMenu插件提供 //详见: http://abeautifulsite.net/2008/09/jquery-context-menu-plugin/ //本插件中对原contextMenu插件中的样式做了修改,使用了jQuery UI皮肤 contextMenu: { element: $('#contextMenuElementId'), handler: function (action, el, pos) { /*do something...*/ } }, //开启Tab后是否锁定(不允许关闭,默认: false) lock: false, //开启Tab后是否禁用(不允许激活和操作iframe内容,默认: false) disable: false, //当tabs中只有一个Tab时,是否锁定该Tab(默认: true) lockOnlyOne: true, //显示iframe的容器(默认创建在tabs元素中) panelContainer: $('#panelContainerElementId')/*, 其中 tabHeaderTemplate: '', //(Tab用于控制的头模板) tabPanelTemplate: '', //(Tab用于显示的Panel模板) uidGenerator: function() {} //(Tab唯一id生成器) 功能现在不启用,等有时间完善后再启用*/ }); tabs.add({ url: 'http://think8848.cnblogs.com', label: 'think8848' }); }); </script>
CleverTabs.add方法:
添加一个新的Tab并使之成为激活状态,如果将要添加的url已经存在,则会激活该Tab
<script type="text/javascript"> var tabs = ('#tabs').cleverTabs(); tabs.add({ //必须是在tabs内唯一的id id: 'uniqueId', //将要在iframe的src属性设置的值 url: 'iframe.src', //显示在Tab头上的文字 label: 'tab header', //关闭本Tab时需要刷新的Tab的url(默认: null) closeREfresh: 'tab url', //关闭本Tab时需要激活的Tab的url(默认: null) closeActivate: 'tab url', //关闭本Tab时需要执行的回调函数 callback: function () { /*do something*/ } }); </script>
CleverTabs.getCurrentTab方法:
获取当前处于激活状态的Tab
<script type="text/javascript"> var tabs = ('#tabs').cleverTabs(); var tab = tabs.getCurrentTab(); </script>
CleverTabs.getTabByUrl方法:
获取指定url的Tab实例
<script type="text/javascript"> var tabs = ('#tabs').cleverTabs(); var tab = tabs.getTabByUrl('http://think8848.cnblogs.com'); </script>
CleverTabs.clear方法:
关闭tabs内所有未锁定的Tab
<script type="text/javascript"> var tabs = ('#tabs').cleverTabs(); var tab = tabs.clear(); </script>
CleverTabs.resizePanelContainer方法:
重新默认的tabs的PanelContainer的大小
<script type="text/javascript"> var tabs = ('#tabs').cleverTabs(); $(window).bind('resize', function () { //当发生window.resize事件时,重新默认的tabs的PanelContainer的大小 tabs.resizePanelContainer(); }); </script>

CleverTab(注意没有s)说明:
CleverTab为一个单一的Tab,包含头(li)和页面(panel>ifame)
CleverTab.activate方法:
使Tab页面处于激活状态

<script type="text/javascript"> var tabs = ('#tabs').cleverTabs(); var tab = tabs.getTabByUrl('http://think8848.cnblogs.com'); tab.activate(); </script>
CleverTab.deactivate方法:
使Tab页面处于未激活状态,但不建议在代码中使用
CleverTab.prevTab方法:
获取该Tab之前的Tab
<script type="text/javascript"> var tabs = ('#tabs').cleverTabs(); var tab = tabs.getTabByUrl('http://think8848.cnblogs.com'); var prevTab = tab.prevTab(); </script>
CleverTab.nextTab方法:
获取该Tab之后的Tab
<script type="text/javascript"> var tabs = ('#tabs').cleverTabs(); var tab = tabs.getTabByUrl('http://think8848.cnblogs.com'); var prevTab = tab.nextTab(); </script>
CleverTab.kill方法:
从tabs中移移该Tab
<script type="text/javascript"> var tabs = ('#tabs').cleverTabs(); var tab = tabs.getTabByUrl('http://think8848.cnblogs.com'); tab.kill(); </script>
CleverTab.refresh方法:
刷新该Tab的iframe中的内容
<script type="text/javascript"> var tabs = ('#tabs').cleverTabs(); var tab = tabs.getTabByUrl('http://think8848.cnblogs.com'); tab.refresh(); </script>
CleverTab.setDisable方法:
设置该Tab的disabled属性,设置disabled为true后,自动设置该Tab的locked属性为true
<script type="text/javascript"> var tabs = ('#tabs').cleverTabs(); var tab = tabs.getTabByUrl('http://think8848.cnblogs.com'); //参数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('http://think8848.cnblogs.com'); //参数true为锁定,false或不提供值为解锁 tab.setLock(true); </script>