Middle
Aký je rozdiel medzi tagmi <script>, <script async> a <script defer>?
sobes.tech AI
Odpoveď od AI
Obvyklý <script>: prehliadač zastaví parsovanie HTML, načíta a spustí skript, potom pokračuje v parsovaní. Blokuje zobrazenie.
<script async>: skript sa načíta asynchrónne, parsovanie HTML pokračuje. Skript sa spustí ihneď po načítaní a môže prerušiť parsovanie HTML. Poradie spúšťania skriptov nie je garantované.
<script defer>: skript sa načíta asynchrónne, parsovanie HTML pokračuje. Spustenie skriptu je odložené do ukončenia parsovania HTML a konštrukcie DOM stromu. Skripty sa spúšťajú v poradí, v akom sa objavia v HTML.
| Atribút | Parsovanie HTML | Načítanie skriptu | Spustenie skriptu | Závislosť od poradia |
|---|---|---|---|---|
| Chýba | Zastaví | Blokujúce | Blokujúce | Zaručené |
async |
Pokračuje | Neblokujúce | Môže prerušiť parsovanie | Nie je garantované |
defer |
Pokračuje | Neblokujúce | Po parsovaní HTML | Zaručené |