我几乎为jQuery UI选项卡创建了一个插件,它为我提供了下一个和上一个按钮。但是,我无法绑定到tabscreate事件以为显示的第一个选项卡应用某些逻辑。
我已经注意到我的插件内部和外部(页面上的jQuery)。
执行$('#tabs').tabs();
这有效
$(tabsSelector).bind("tabsshow", function (event, ui) {
alert("On Tab Show");
});
这不是
$(tabsSelector).bind("tabscreate", function (event, ui) {
alert("On Tabs Creation");
});
纯粹是因为标签是先前创建的,如果是这样,我如何通过插件添加到创建事件?
答案 0 :(得分:2)
我认为您可以使用方法length
来查询标签计数。使用select
方法进行导航就足够了。
如果你真的需要tabscreate
事件,请在你的插件中包装调用tabs()
方法,然后在那里传递事件处理程序。像这样:
function CustomTabs(selector){
$( selector ).tabs({
create: function(event, ui) { /* put your code here */ }
});
}
答案 1 :(得分:0)
最简单的方法是不使用你的方法。使用“$(...)。tabs({create:function(event,ui){your code here}})”将起作用,但请记住调用“create”事件(不知道为什么)在“show”事件之后(如果你使用它)。另请注意,“ui”(特别是ui.panel)不可用。
希望它有所帮助: - )