Вы должны сохранить флаг на первом закрытии, в функции, которую вы передаете $(document).ready
, установить его в значение true, когда нажимаются кнопки Next / prev, и установить в значение false, когда вкладка была показана, выполнив это. , вы сможете изменить вкладку только с помощью кнопок.
Проверьте этот рабочий образец и следующий фрагмент кода:
$(document).ready(function(){
var allowTabChange = false;
var $myTabs = $("#tabs");
$myTabs.tabs({
select: function(event, ui) { return allowTabChange; },
show: function(event, ui) { allowTabChange = false; },
});
$('#nextButton').click(function(){offsetTab(1);});
$('#prevButton').click(function(){offsetTab(-1);});
// Helper functions
function offsetTab(offset){
var tab_num = $myTabs.tabs('option', 'selected');
var nextTab = tab_num + offset;
if ( check_tab(nextTab) ) {
allowTabChange = true;
$myTabs.tabs('select', nextTab);
}
}
function check_tab(tab_num){
return tab_num >= 0 && tab_num < $myTabs.tabs('length');
}
});