J'ai une page qui fadeIn et fadeOut un élément en ligne et jQuery ne fonctionne pas. Et puis, lorsque je change les outils de développement pour utiliser le mode navigateur d'Internet Explorer 7, les effets fadeIn() et fadeOut() s'affichent.Est-ce que fadeIn() et fadeOut() de jQuery ne fonctionnent pas avec IE 8?
Répondre
IE a un détail d'implémentation connu sous le nom de "hasLayout" qui, malheureusement, fuit souvent l'abstraction de l'API et doit être traité de front ... C'est la bataille que vous affrontez aujourd'hui: les éléments en ligne n'auront généralement pas "layout" et donc ne fonctionnera pas avec "filtres" ... qui sont ce que jQuery utilise pour simuler l'opacité sur IE.
Ce n'est pas nouveau dans IE8, et normalement vous ne devriez pas vous inquiéter du tout puisque c'est exactement ce genre de folie spécifique au navigateur que jQuery est destiné à recouvrir ... En effet, c'est pourquoi je Je ne prends pas la peine d'entrer dans les détails sur ce que "hasLayout" et "filters" signifient réellement - vous ne vous en souciez probablement pas, mais vous ne devriez pas le faire (mais, si vous êtes intéressé, google it ...)
Problème, le hack que jQuery utilise sous le capot pour forcer la mise en page (donc les filtres fonctionnent (donc ça peut simuler l'opacité (puisque IE ne l'implémente pas))) ... ça ne marche pas sur IE8. N'est-ce pas que juste génial, hein? Ils ont corrigé le bug par lequel les éléments display: inline
se comportaient comme display: inline-block
éléments, mais ont négligé d'implémenter la fonctionnalité que les gens utilisaient leur bogue pour pirater le support de ...
Eh bien, rien de ce que vous pouvez faire à ce sujet. Écrire un email désagréable à Team IE pourrait vous faire vous sentir un peu mieux, mais ils travaillent dur sur IE9, qui devrait (frapper sur bois ...) résoudre la plupart de ces problèmes. En attendant, vous avez juste à faire manuellement ce que IE utilisé faire (un peu, sorta, et très certainement à tort) par lui-même: force l'élément en ligne en mode inline-block:
$("myInlineElement").css({display: 'inline-block'}).faceOut();
... ou mieux encore, put it in an IE8-only stylesheet ...
- 1. jQuery fadeIn et fadeOut ne fonctionnent pas dans Internet Explorer 6, 7 ou 8?
- 2. jquery fadeOut/fadeIn ne fonctionne pas dans IE
- 3. fadeIn/fadeOut Problème jquery avec IE7/8 & png
- 4. hovering: fadeIn, delay, fadeOut. [ne fonctionne pas]
- 5. Le script fadein et fadeout Jquery ne fonctionne pas
- 6. Jquery Stop Fadein/Fadeout
- 7. jQuery FADEIN texte fadeout
- 8. jquery fadeout, charger, fadein
- 9. Jquery replaceWith - fadeout/Fadein
- 10. FadeIn FadeOut avec JQuery avec une torsion
- 11. jQuery - .fadeIn() et .fadeOut() - permutation DIVs
- 12. jQuery fadeIn fadeOut - IE8 ne se fane pas
- 13. jquery ne fonctionne pas avec IE 8
- 14. JQuery hover fadeIn/fadeOut problème
- 15. Problèmes d'animation JQuery fadeIn/fadeOut
- 16. jQuery fadeIn ne fonctionne pas dans IE
- 17. jQuery fadeIn() ne fonctionne pas dans IE
- 18. Jquery séquentielle fadeIn et FadeOut - même endroit
- 19. jQuery FadeOut div fonctionne - .load puis .fadeIn div ne
- 20. Problème de boucle JQuery fadeIn fadeOut
- 21. Opacité et jQuery fadeIn/fadeOut dans l'extension firefox
- 22. jQuery - IE8 - fadeIn()/fadeOut() pixel décalage
- 23. JQuery fadeIn fadeOut avec setInterval fonctionnant de manière sporadique
- 24. Jquery ne fonctionne pas dans IE 8
- 25. jQuery FADEIN fadeout à plusieurs reprises
- 26. jQuery fadeIn fadeOut (ou afficher/masquer) numéro
- 27. Pourquoi jQuery fadeIn() et fadeOut() semblent bizarres dans cet exemple?
- 28. Jquery Fadeout FADEIN avec des éléments li problème
- 29. jQuery fadeIn pause fadeOut sur hover
- 30. JQuery - IE6 - Comment faire pour FadeOut et FadeIn simultanément?
Fonctionne pour moi. Votre balisage html est-il valide? Si ce n'est pas le cas, IE fait les choses comme "IT" pense le mieux, ce qui est généralement faux. (vs en utilisant des normes) – Aren