S HTML5 jsme získali dva nové logické atributy pro značku <script>: async a defer. Async umožňuje spouštět skripty asynchronně a defer umožňuje jejich spuštění až po analýze celého dokumentu.

Tyto dva atributy jsou nezbytností pro zvýšení rychlosti a výkonu webových stránek. Umožňují eliminovat JavaScript blokující vykreslování, kdy by stránka musela načíst a provést skripty před dokončením vykreslování stránky. Zde je příklad použití:

<script defer src="https://www.digitalocean.com/js/jquery.min.js"></script>

Async vs Defer

Při použití async se soubor stáhne asynchronně a spustí se ihned po stažení.

Při použití defer se soubor stáhne asynchronně, ale spustí se až po dokončení analýzy dokumentu. Při použití funkce defer se skripty provedou ve stejném pořadí, v jakém jsou volány. Díky tomu je atribut defer vhodnou volbou v případě, že skript závisí na jiném skriptu. Pokud například používáte jQuery a další skripty, které na něm závisí, použijete u nich (včetně jQuery) defer a ujistíte se, že jQuery bude zavolán před závislými skripty.

Dobrá strategie je použít asynchronní, když je to možné, a pak defer, když asynchronní není možnost.

👉Všimněte si, že oba atributy nemají žádný vliv na inline skripty.

Podpora prohlížeče

Můžu použít script-async? Údaje o podpoře funkce script-async v hlavních prohlížečích z caniuse.com.

.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.