Regardez ce code:
<body> <script src = "deffer.js"> </ script> Contenu </body>
Le contenu de Deffer.js est:
alerte (1)
De cette façon, la page sera vide jusqu'à ce que la fenêtre d'alerte soit fermée. Parce que la fenêtre d'alerte empêche la page de continuer à rendre.
Afin d'éviter de tels problèmes, la spécification HTML définit les attributs Deffer et Async. Les définitions spécifiques de ces deux attributs ne sont pas discutées ici. Quoi qu'il en soit, ils sont utilisés pour dire au navigateur que le contenu du script doit être exécuté une fois le rendu de la page terminé, de sorte que la page a été rendue lorsque le script est exécuté.
<body> <script deffer async src = "deffer.js"> </ script> contenu </body>
Notez que pour plusieurs scripts avec Deffer ou Async ajoutés, leur ordre d'exécution n'a rien à voir avec l'ordre dans lequel ils apparaissent sur la page. Même si la spécification HTML définit que le script deffer doit être exécuté dans l'ordre, le navigateur ne se conforme en fait pas entièrement à cette convention.