1

各ヘッダーに独自のIDがあり、divに独自のIDがある単純なアコーディオンがあります。

現在選択されているヘッダー ID または div ID を取得するオブジェクトを作成するにはどうすればよいですか?

<div id="mainDiv">
    <h6 id="myAttributes">Attributes</h6>
    <div id="divAttributes">
    </div>

    <h6 id="myConstants">Constants</h6>
    <div id="divConstants">
    </div>
</div>
</div>

私は立ち往生しています:

jQuery(function () {
    $("#mainDiv").accordion({
        activate: function () {

        }
    });
});

ありがとうございました。

4

2 に答える 2

5

.ui-accordion-header-activeアクティブ化すると、アコーディオンによって自動的に追加されるclass を持つ要素を取得します。

jQuery(function () {
    $("#mainDiv").accordion({
        activate: function () {
                  alert($('.ui-accordion-header-active').attr('id'));
        }
    });
});

デモ: http://jsfiddle.net/3jHwC/1/

同じセレクターを使用して、アコーディオンのトリガーされたイベントの外部からアクティブなヘッダーを実際に取得できます。$('#mainDiv .ui-accordion-header-active')

于 2013-07-07T18:32:45.580 に答える
4

activateオプション関数は 2 つの引数eventを受け取りますui: http://api.jqueryui.com/accordion/#event-activate

次に、からすべてのデータを取得できますui

activate: function (event, ui) {
    console.log(ui.newPanel[0].id);
}
于 2013-07-07T18:32:18.913 に答える