J'ai quelques menus css sur mon site qui se développer avec :hover
(sans js)
Cela fonctionne dans un semi-broken façon sur les iDevices, par exemple, un robinet qui va activer l' :hover
règle et développez le menu, puis en tapant ailleurs ne supprime pas l' :hover
. Aussi, si il y a un lien à l'intérieur de l'élément, c'est - :hover
'ed, vous devez appuyez deux fois pour activer le lien (appuyez d'abord sur des déclencheurs :hover
, deuxième appuyez sur les déclencheurs de lien).
J'ai été en mesure de faire fonctionner les choses bien sur l'iphone par la liaison de l' touchstart
événement.
Le problème est que, parfois, le navigateur safari mobile encore choisit de déclencher l' :hover
de la règle de la css à la place de mon touchstart
événements!
Je sais que c'est le problème, parce que quand j'ai désactiver tous les :hover
règles manuellement dans le css, le navigateur safari mobile fonctionne très bien (mais régulière des navigateurs, évidemment, ne le font plus).
Est-il un moyen dynamique d' "annuler" :hover
règles pour certains éléments lorsque l'utilisateur est sur le navigateur safari mobile?
Voir et comparer iOS comportement ici: http://jsfiddle.net/74s35/3/ Remarque: seules certaines propriétés css déclencher les deux-cliquez sur le comportement, par exemple display:none; mais pas de background: red; text-decoration: underline;