userprefにtabの選択情報を保存するのでこれらのfeatureを使えるようにします。
<Module> <ModulePrefs> <Require feature="setprefs" /> <Require feature="tabs" /> </ModulePrefs>
タブの選択情報の保存先を用意します。
<UserPref name="selectedTabIndex" datatype="hidden" default_value="0" />
タブを用意します。
var tabs = new gadgets.TabSet(__MODULE_ID__, null, document.getElementById("tabs")); var a_tab = { contentContainer: document.getElementById("a_tab"), callback: function() { lf_selected(); } }; tabs.addTab("a", a_tab); var b_tab = { contentContainer: document.getElementById("b_tab"), callback: function() { lf_selected(); } }; tabs.addTab("b", b_tab); var c_tab = { contentContainer: document.getElementById("c_tab"), callback: function() { lf_selected(); } }; tabs.addTab("c", c_tab);
callbackで呼ばれる、タブの選択メソッドを用意します。
/* * タブ選択状態の設定 */ function lf_selected(){ var selectedindex = tabs.getSelectedTab(); selectedindex = selectedindex.getIndex(); prefs.set("selectedTabIndex",selectedindex); }
タブの選択情報から初期選択のタブをロードします。
tabs.setSelectedTab(prefs.getInt("selectedTabIndex"));