2

選択を含むHTMLフォームを含むWebサイト用のcssドロップダウンメガメニューを作成しています。IE7では、選択をクリックすると、ポップアップメニューが(当然のことながら)開きます。次に、メニューの上にマウスを置いて項目を選択すると、フォーカスがページから離れているように見え、含まれているdiv / liは:hoverを失い、オプションを選択する前にすべてが閉じます。

ここでJSFiddleでプレビュー:http://jsfiddle.net/q284w/

上記のJSFiddleの「メニュー1」に問題のあるコードがあります...そうです、私はテーブルを使用して、そのメニューでフルハイト、垂直方向の中央に配置された3列のレイアウトを取得しています。元のコードにあるので、ここに入れます。それは問題の一部ではないと思いますが、IEでは決してわかりません。

もちろん、これはIE8+を含むテスト可能な他のすべてのブラウザーで機能します。

回避策に関するアイデアはありますか?おそらくJavaScriptはその日を救うことができますか?

4

1 に答える 1

0

最終的に、これに対する簡単な答えはありません(私が見つけました)。JavaScript を使用して回避する必要があるだけで、面倒です。その要旨は次のとおりです。

  1. :hover 状態を模倣する特別なクラスを作成します。これを使用して、メニューを開いたままにします。
  2. このクラスを適切なメニュー項目に追加し、ドロップダウンの onClick にアタッチする関数を作成します。
  3. 別の関数で、クラスを削除し、それをドロップダウンの onChange にアタッチします (ドロップダウンが閉じます)。
于 2013-03-18T17:26:09.957 に答える