jQuery UI选项卡:获取当前选项卡索引
答
$('#tabs').tabs({
select: function(event, ui) { // select event
$(ui.tab); // the tab selected
ui.index; // zero-based index
},
show: function(event, ui) { // show event
$(ui.tab); // the tab shown
ui.index; // zero-based index
}
});
或者,如果你不想绑定在初始化的事件监听器,你可以将它们绑定这样的:
$('#tabs')
.bind('tabsselect', function(event, ui) { // select event
$(ui.tab); // the tab selected
ui.index; // zero-based index
})
bind('tabsshow'. function(event, ui) { // show event
$(ui.tab); // the tab shown
ui.index; // zero-based index
});
答
你可以用它来找到
var $tabs = $('#tab').tabs();
var selected = $tabs.tabs('option', 'selected');
从JQuery的1.9上
var $tabs = $('#tab').tabs();
var selected = $tabs.tabs('option', 'active');
+14
+1,用于显示如何在显示或选择事件之外查找选定的选项卡。不是OP要求的,而是我需要知道的。 – davidethell
答
我实现了这个在我的项目之一:
var lastTab = 0; // global variable
$(function() {
$('#tabs').tabs({
select: function(event, ui) {
lastTab = ui.index;
}
});
});
然后在你的代码的其他地方,你可以直接引用lastTab
。
答
的jQuery 1.9或更高版本...
$('#tabs').tabs({
activate: function(event, ui) {
ui.newTab.index(); // zero-based index
}
});
嗨能否请你提出这是这两个之间的更好? –
@HardikMishra我会建议第一个,因为如果事件名称在未来发生变化,它不会中断! – Shef
从1.9开始,这不起作用,ui.index是未定义的。 –