1

JQueryは初めてです。Jquery アコーディオンについて 1 つ質問があります。最初のパネルのヘッ​​ダーをクリックしてから (同じ最初のヘッダーで) 2 番目のパネルを閉じて最初のパネルを開くことで、最初のパネルを閉じて 2 番目のパネルを自動的に開くことは可能ですか?

Doug Neiner answer で似たようなものを見つけました:

イベントによってjqueryアコーディオンメニューをトリガーしますか?

しかし、私の場合はうまくいかないようです。(しかし、ボタンで確認したところ、問題ありませんでした)。これは変更されたコードですが、閉じたときに最初のパネル ヘッダーをクリックすると、最初のパネルが開き、すぐに閉じます。

Jクエリ

$("#first_panel").click(function(e){
  e.preventDefault();
  var acc   = $("#myaccordion"),
      index = acc.accordion('option','active'),
      total = 2 ,
      nxt   = index + 1;

  if (nxt >= total) {
  nxt = 0; // Loop around to the first item
  }

  acc.accordion('activate', nxt);
})

HTML

<div id="myaccordion">

  <h3 id="first_panel">FIRST PANEL</h3>
<div>
 Text...
</div>

  <h3 id="second_panel">SECOND PANEL</h3>
<div>
 More text...
</div>

</div>

誰にもアイデアはありますか?

http://jsfiddle.net/isherwood/Mn2L4/

4

1 に答える 1

1

アコーディオンのデフォルトイベントを防止する必要があります

$("#myaccordion").accordion({event: false});

更新された jsFiddle を参照してください

于 2013-07-17T18:32:03.143 に答える