現在表示されているページに応じて、jQueryUIアコーディオンメニューの正しいコンテンツ部分を動的にアクティブ化する方法を見つけようとしています。私は広範囲に検索しました、そして他の人が過去にこれに関して問題を抱えていたようです、しかし私はまだ私のために働く解決策を見つけていません。active
メニューの特定のインデックスを開くように設定できることは知っていますが、これを動的に行う必要があります。
この方法で自分のやりたいことができると思っているのですactivate
が、なかなかわからないようです。通常、戻る/進むボタンや特定のURLを介した直接ナビゲーションでは機能しないため、Cookieの設定は避けたいと思います。誰かアイデアはありますか?前もって感謝します!
これが私のメニューの単純化された構造です:
<div id="menu">
<div id="sections">
<div class="grouping accordion">
<a id="heading1" href="#">Heading #1</a>
<div class="sub-items">
<a href="/item1">Item #1</a>
<br />
<a href="/item2">Item #2</a>
</div>
</div>
<div class="grouping accordion">
<a id="heading2" href="#">Heading #2</a>
<div class="sub-items">
<a href="/item4">Item #4</a>
<br />
<a href="/item5">Item #6</a>
</div>
</div>
</div>
</div>
そして、これが私のjQueryアコーディオンの初期化です:
$('#sections').accordion({
header: '> .accordion > a',
autoHeight: false,
collapsible: true,
active: false,
animated: 'slide'
});
したがって、/item4
たとえば現在このページを表示している場合は、見出し#2の下のグループを展開する必要があります。
編集: 私はかなり良い解決策と思われるものを見つけ、以下の答えとしてそれを投稿しました、うまくいけば、これは同様の問題を抱えている人を助けるでしょう!