7

次のコードを使用して、クリック時にタブの色を変更しています

  $("ul.tabs").tabs("> .pane");

しかし、それはエラーを投げています

uncaught exception: cannot call methods on tabs prior to initialization; attempted to call method '> .pane'

誰かがこれを手伝ってくれますか?このエラーは何ですか?

4

3 に答える 3

11

例外が言うように、それはかなり簡単です。タブで作業する前に、タブを初期化する必要があります。したがって、それらを初期化します。

function(){
$("ul.tabs").tabs();
}

または単に使用して

$("ul.tabs").tabs().tabs($("div.panes > div"), action);
于 2014-06-19T07:23:45.153 に答える
3

このコードを使用して何を期待しているのかわかりませんが、それは間違っています。.tabs()メソッドの属性としてセレクターを渡すべきではありません。使用方法については、jQuery UI Tabs APIを参照してください。

于 2012-12-11T12:26:34.983 に答える
0

初期化が無効です。("> .pane")引数部分は確かに存在しない tabs 名前空間のメソッドを呼び出そうとしています。

また、ul 自体ではなく、リスト (ul) を含む div で tabs メソッドを初期化します。

html構造を仮定します:

<div id="tabs">
  <ul>
    // the list items
  </ul>
    // tab content divs (all with class="pane")
</div>

このようなもの:

$('#tabs').tabs();
$('#tabs li').bind('click', function() {
   // change bg color to 'teal' of all divs with class name '.pane' inside #tabs div
   $('#tabs').find('.pane').css('background-color', 'teal');
});

詳しくはjqueryui.com/tabsをご覧ください

于 2012-12-11T12:41:50.547 に答える