Regardez ce code :
<body> <script src="deffer.js"></script> content </body>
deffer.js est :
alert(1)
De cette façon, la page sera vierge jusqu'à ce que la fenêtre d'alerte soit fermée. Parce que la fenêtre d'alerte empêche la page de continuer à s'afficher.
Afin d'éviter de tels problèmes, les attributs deffer et async sont définis dans la spécification HTML. Les définitions spécifiques de ces deux attributs ne seront pas abordées ici. Quoi qu'il en soit, ils sont utilisés pour indiquer au navigateur que cette page doit être exécutée. une fois le rendu de la page terminé. Le contenu du script, de sorte que la page ait été rendue lorsque le script est exécuté.
<body> <script deffer async src="deffer.js"></script> content </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 les scripts différés doivent être exécutés dans l'ordre, les navigateurs ne respectent pas réellement cette convention.