我有這樣的代碼:jQueryUI的標籤(1.9.1)激活負荷
var enTabs = {
"Layout": 0,
"Edit": 1,
"Stuff": 2
}
$("#tabs").tabs({
activate: function (event, ui) {
switch (ui.newTab.index()) {
case enTabs.Layout:
// loads remote data, processes it, draws it to this tab;
break;
case enTabs.Edit:
// loads remote data, processes it, draws it to this tab;
break;
case enTabs.Stuff:
// loads remote data, processes it, draws it to this tab;
break;
}
}
}).tabs("option","disabled",[enTabs.Edit,enTabs.Stuff]);
console.log("active tab", $("#tabs").tabs("option","active")); // says "0"
按照jQuery的「設計」的聲明(http://bugs.jqueryui.com/ticket/8735),當標籤是不處理的activate
事件第一次繪製;或者當您設置.tabs("option","active",enTabs.Layout)
時,如果當前索引與您設置的選項/活動相匹配,激活將不會觸發,並且它被初始化爲零。
什麼是最好的方法來確保當第一次繪製標籤,'激活'被激發的第一個(第0)選項卡,意識到我不想綁定到'創建',因爲我沒有想要加載標籤上的數據,直到它們實際被點擊?
我一直沒能做出
$("#tabs").tabs("option", "active", -1).tabs("option", "active", enTabs.Layout)
工作始終。