191 votes

Quels navigateurs supportent <script async="async" /> ?

Le 1er décembre 2009, Google a annoncé la prise en charge de suivi asynchrone de Google Analytics .

Le suivi asynchrone est réalisé à l'aide de la directive async pour la fonction <script> étiquette.

Quels sont les navigateurs qui supportent la directive asynchrone ( <script async="async" /> ) et depuis quelle version ?

161voto

Philip Rieck Points 21405

Le support asynchrone tel que spécifié par Google est réalisé en deux parties :

  • en utilisant script sur votre page (le script est fourni par Google) pour écrire une balise <script> dans le DOM.

  • que script possède l'attribut async="true" pour signaler aux navigateurs compatibles qu'il peut poursuivre le rendu de la page.

La première partie fonctionne sur les navigateurs qui ne prennent pas en charge la fonction <script async.. ce qui leur permet de se charger de manière asynchrone avec un "hack" (bien qu'assez solide), et permet également de rendre la page sans attendre que ga.js soit récupéré.

La deuxième partie n'affecte que les navigateurs compatibles qui comprennent la méthode asynchrone Attribut html

  • FF 3.6+
  • FF pour Android Toutes les versions
  • IE 10+ (à partir de l'aperçu 2)
  • Chrome 8+
  • Chrome pour Android Toutes les versions
  • Safari 5.0+
  • iOS Safari 5.0+
  • Navigateur Android 3.0+ (à partir de Honeycomb)
  • Opera 15.0+
  • Opera Mobile 16.0+
  • Opera Mini Aucun (à partir de la version 8.0)

La façon "html5 proper" de spécifier async est avec un élément <script async src="..." , pas <script async="true" . Toutefois, les premiers navigateurs ne prenaient pas en charge cette syntaxe, ni la définition de la propriété script sur les éléments référencés. Si vous le souhaitez, la liste change :

  • FF 4+
  • IE 10+ (preview 2 et plus)
  • Chrome 12+
  • Chrome pour Android 32+
  • Safari 5.1+
  • Pas de versions Android

60voto

Kyle Simpson Points 3800

Cette question comporte en réalité deux volets.

  1. Q : Quels sont les navigateurs qui supportent l'attribut "async" sur une balise script dans un balisage ?

    A : IE10p2+, Chrome 11+, Safari 5+, Firefox 3.6+.

  2. Q : Quels sont les navigateurs qui prennent en charge la nouvelle spécification définissant le comportement de la fonction "asynchrone" ? propriété en JavaScript, sur un élément script créé dynamiquement ?

    A : IE10p2+, Chrome 12+, Safari 5.1+, Firefox 4+.

Quant à Opera, il est sur le point de sortir une version qui supportera les deux types d'asynchronisme. J'ai travaillé en étroite collaboration avec eux sur ce sujet, et cela devrait sortir bientôt (je l'espère !).

Plus d'informations sur ordered-async (aka, "async=false") peuvent être trouvées ici : http://wiki.whatwg.org/wiki/Dynamic_Script_Execution_Order

En outre, pour tester si un navigateur prend en charge le nouveau comportement dynamique des propriétés asynchrones : http://test.getify.com/test-async/

25voto

JeremiahLee Points 634

Une liste complète des versions de navigateurs prenant en charge le async est disponible ici

10voto

tvanfosson Points 268301

D'après votre page de référence :

http://googlecode.blogspot.com/2009/12/google-analytics-launches-asynchronous.html

Firefox 3.6 est le premier navigateur à offrir officiellement la prise en charge de cette nouvelle fonctionnalité. Si vous êtes curieux, voici plus de détails sur le site officiel de Firefox. Spécification HTML5 asynchrone .

4voto

Kevin Hakanson Points 15498

Vous pouvez également consulter le Réseau Browscope teste la prise en charge actuelle des navigateurs. Il existe une colonne "Async scripts".

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X