“pointer-events: none” ne fonctionne pas dans IE9 et IE10
Le CSS - propriété pointer-events: none;
fonctionne très bien sous Firefox, mais il n'est pas dans Internet Explorer 9 et 10.
Est-il possible d'obtenir le même comportement de cette propriété dans IE? Des idées?
- Si votre intention est d'empêcher l'utilisateur de cliquer n'importe où sur la page pendant un appel ajax, vous pouvez utiliser: $('body').css({'curseur':'attendre'});, et lorsque vous voulez retourner à la normale de l'état de curseur, utilisez: $('body').css({'curseur':'par défaut'});
- Fév. 2017: pour info il fonctionne sur IE11.
Vous devez vous connecter pour publier un commentaire.
Du MDN docs:
Lire la suite ici, fondamentalement,
pointer-events
sur un non-SVG (Scalable Vector Graphic) est non-standard.Si vous cochez la prise en charge du navigateur tableau de la page liée (environ deux tiers), vous remarquerez que IE appuyer sur la non-svg est ziltsh, jack squat, naut,... pas pris en charge, ce qui est.
Après quelques recherches, je n'ai trouver cet article qui ne vous permettent d'imiter les comportements par le biais de l'utilisation de couches, et , grâce à ce post, j'ai trouvé ce JS-bin Qui pourraient t'aider...
Toutefois, dans IE (et de l'Opéra, et autant que je sache, tous les navigateurs), vous pourriez simplement forcer un type de curseur sur un élément:
Le résultat devrait être assez similaire à celle de
pointer-events: none;
Mise à jour:
Si vous souhaitez empêcher les événements de clic dans IE qui, comme shasi souligné, est prévue dans les autres navigateurs, il suffit d'ajouter un écouteur d'événement que les délégués de l'événement click.
Je vais assumer, à l'instant, que vous ciblez tous les
a
éléments:Ce qui devrait éviter tous les événements de clic sur les éléments d'ancrage.
pointer-events: none
. Si il y a un élément cliquable sous le<a>
, il ne recevra pas l'événement click. Si le<a>
apointer-events: none
, l'élément sous-jacent serait de recevoir l'événement.De la recherche à l'Api, je ne pense pas que les Riches Harris Points.js ni Hands.js, de fournir un soutien pour pointeur-events: none.
Donc, j'ai juste mis en place un petit script de polyfill de cette fonctionnalité:
De merde IE10, il y a une autre solution, par exemple :