これは非常に単純な状況ですが、解決策が議論されたり質問されたりしていないことに驚いています。
パネルにメニューがある任意のAccordionでは、ヘッダー自体が (メニューの) 唯一のオプションであるため、コンテンツ パネルを表示してはならない場合があります。ヘッダー自体がクリック イベントを処理し、コンテンツ パネルを展開せずに何かを行います。
だから、私は次のことを試しました:
a. およびイベント ハンドラーdiv
を含むさまざまな場所で、静的および動的にCSS でコンテンツ パネルの高さをゼロに設定するすべての可能な方法。activate
beforeactivate
b. ui-state-disabled
create イベント ハンドラーのヘッダーにクラスを追加しました。正常に動作しますが、2 つの小さな問題があります。まず、無効化されたヘッダーは別の CSS を取得し、次にヘッダーをクリックすると、他のパネルは折りたたまれません。これは、ヘッダーを無効化すると、クリック イベントがそれ以上伝播されなくなり、現在開いているコンテンツ パネルを折りたたむ作業が行われなくなるためです。明示的に呼び出すことができる折りたたみメソッドはありません。
c. jquery accordion の特定のリンクを無効にする方法の解決策を試しました。動作しません。
誰かが新しいアプローチを提案できますか? 別の言い方をすると、問題はアコーディオン駆動のメニューを実装することです。複数のオプションがある場合、メニュー ウィジェットはパネルに埋め込まれます。単一の場合、アコーディオン自体のヘッダーがクリック可能なメニュー項目/オプションになります。