• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:jQueryでアコーディオンメニュー)

jQueryでアコーディオンメニュー

このQ&Aのポイント
  • jQueryのaccordionでメニューを作っています。
  • 初期のページは大項目1~3がアコーディオンで開閉し、開いた中にある小項目がリンクボタンになっています。
  • アコーディオンではさむ形になるので、新しいid「slider2」を作りましたが、お互いが開いたままの状態になってしまうのが難点です。

質問者が選んだベストアンサー

  • ベストアンサー
  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.2

No1です。 CSSのクロスブラウザについてはよく知らないのですが、Webで検索してみると、これはかなり常識みたいですね。 もともと、擬似クラスはリンクタグがもとになっているみたいなので、IEではaタグしか対応していなのかな? 簡単な実験をしてみましたが、やはりリンクタグ以外は反応しませんでした。(IE6) (もちろん、リストもダメです。リンクタグを使えば可能です。) IEでも擬似クラスを使えるようにすることを考えている人もたくさんいるみたい。 <参考> http://blog.digital-squad.net/article/44204963.html http://jmblog.jp/archives/88 http://builder.japan.zdnet.com/news/story/0,3800079086,20366697,00.htm まったく別の考え方ですが、すでにスクリプトを使用していらっしゃるので、CSSによらない方法として、javascriptでロールオーバーする方法を用いれば、IEでも同じ処理で可能になります。

kuusu
質問者

お礼

ご回答ありがとうございます。 仕事と製作の多忙によりお礼が遅くなってしまって申し訳ございませんでした。 教えて頂いた参考サイト様の方法を試した所、望んでいた結果にすることができました。 DLしたファイルを外部ファイルでCSSに読み込むだけで、今までの悩みが解消されてとても驚いています。 大変助かりました。 メニューは全カテゴリ分がもうすぐで完成いたします。 ご教示頂き、本当にありがとうございました。

その他の回答 (1)

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.1

ライブラリの内容を変更したいのであれば、ご自分でやるか作者に依頼するのがよろしいのでは? http://www.leigeber.com/2009/03/accordion/ サポートも受付てくれているようです。 http://www.leigeber.com/contact/ 実験してないけど、「スライド対象外」とするようなclassでも決めておいて、それが設定されている大項目についてはスライドしないようにでも修正してあげればよいのでは? (スライドを実行する前に、そのclassかどうか確認してから実行すればよい)

kuusu
質問者

補足

回答ありがとうございます。 >「スライド対象外」とするようなclass 考えてみたのですがやはり自分には難しいようです。。 折角アドバイスを頂いたのですが、活かす事が出来ず申し訳ござません。 リンクの飛び先で、 slider1.init("slider",0,"open"); のように開いて待たせるシンプルな方法に変更しようと思います。 追加のご質問で申し訳ございませんが、IEで「span:hover」がうまく動作いたしません。 調べた所IEの仕様のようですが、代わりの方法を考える際、listを使うのがよいでしょうか? (なお、私の環境winXP IE7では「span:hover」も問題なく動いているようです) ご教示くださいますよう、よろしくお願い致します。