0

重複の可能性:
JavaScript で CSS :hover 効果を無効にすることはできますか?

css .hover 擬似クラスを使用して正常に動作するドロップダウン メニューがあります。デスクトップとタブレットの両方で正常に動作します。タブレットでは、メニューをクリックするとホバー効果がトリガーされます。おそらく、タブレットの製造元は、この種のメニューと互換性を持たせるためにこれを行っています.

メニューは純粋な CSS/HTML であり、JavaScript を使用する必要はありません。

ただし、スワイプ機能を追加して、開いているメニューを左右にスワイプすると、トップ メニューをクリックしなくても次のオプションに移動できるようにしたいと考えています。残念ながら、メニューをプログラムで制御すると、タブレットのホバー機能と衝突します。IE では、新しいメニューが表示されていますが、タブレット ブラウザーがまだアクティブなホバーとして処理しているため、古いメニューが消えていません。

したがって、私ができるようにしたいのは、jquery を使用して css :hover 定義を無効にすることです。これが完了すると、既存のコードをそのまま残しながら、jquery タブレット ソリューションを実装できるようになります。

タブレット用とデスクトップ用に異なる CSS ファイルを使用してこれを実行できることはわかっていますが、jquery を使用して実行できるより適切なソリューションがあるかどうか疑問に思っていました。

4

1 に答える 1

1

removeClassjQueryおよび jQueryを使用して、要素の CSS クラスを「再生」できますaddClass

于 2013-02-02T12:48:52.180 に答える