Chcę uzyskać indeks aktualnej zakładki przy użyciu kart jQuery UI
: szczególnie gdy są wywoływane zdarzenia show
lub select
Chcę wiedzieć, że tab, o której mowa, jest to możliwe?Zakładki jQuery UI: pobierz tabulator bieżący indeks
6
A
Odpowiedz
10
$('#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
}
});
Lub, jeśli nie chcą wiązać nasłuchiwania zdarzeń o inicjalizacji można powiązać je tak:
$('#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
});
35
Można to wykorzystać do znajdź
var $tabs = $('#tab').tabs();
var selected = $tabs.tabs('option', 'selected');
Z JQuery 1,9 na
var $tabs = $('#tab').tabs();
var selected = $tabs.tabs('option', 'active');
+14
+1 za pokazanie, jak znaleźć wybraną kartę poza pokazem lub wybierz wydarzenia. Nie tego, co zadał mi OP, ale tego, co musiałem wiedzieć. – davidethell
2
Właśnie to realizowane w jednym z moich projektów:
var lastTab = 0; // global variable
$(function() {
$('#tabs').tabs({
select: function(event, ui) {
lastTab = ui.index;
}
});
});
A potem nigdzie indziej w kodzie można po prostu odwołać lastTab
.
1
dla jQuery 1.9 lub nowszy ...
$('#tabs').tabs({
activate: function(event, ui) {
ui.newTab.index(); // zero-based index
}
});
Hej Czy mógłbyś zasugerować co jest lepsze między tymi dwoma? –
@HardikMishra Proponuję pierwszą, ponieważ nie zostanie ona zerwana, jeśli nazwy wydarzeń w jakiś sposób zostaną zmienione w przyszłości! – Shef
To już nie działa od 1.9, ui.index jest niezdefiniowane. –