Для jQuery UI 1.10 и более поздних версий show
устарело в пользу activate
.Также id
больше не действителен для jQuery.Используйте .attr('id')
вместо этого.Наконец, используйте on('tabsactivate')
вместо bind()
.
$(function() {
$("#tabs").tabs({
activate: function(event, ui) {
window.location.hash = ui.newPanel.attr('id');
}
});
});
Метод пост-создания:
$("#myTabs").on( "tabsactivate", function(event, ui) {
window.location.hash = ui.panel.id;
});
Демо: http://jsfiddle.net/RVHzV/
Наблюдаемый результат: http://jsfiddle.net/RVHzV/show/light/
Ранняя версия JQuery
Добавьте обработчик к вызову вкладки, чтобы обновить хэш местоположения с идентификатором вкладки:
$("#myTabs").tabs({
// options ...
show: function(event, ui) {
window.location.hash = ui.panel.id;
}
});
Вы также можете добавить это после создания вкладок пользовательского интерфейса:
$("#myTabs").bind( "tabsshow", function(event, ui) {
window.location.hash = ui.panel.id;
});
Демонстрация кода: http://jsfiddle.net/jtbowden/ZsUBz/1/
Наблюдаемый результат: http://fiddle.jshell.net/jtbowden/ZsUBz/1/show/light/