Přejít k navigační liště

Zdroják » Zprávičky » Nekonzistence v implementacích události DOMContentLoaded

Nekonzistence v implementacích události DOMContentLoaded

Pokud používáte JavaScript, ať již na webové stránce nebo ve webové aplikaci, velmi pravděpodobně jste potřebovali spustit nějaký skript hned po načtení stránky. K tomu byla původně určena událost „load“, ta se ovšem používá méně a méně. Proč? Protože je vyvolána příliš pozdě, totiž až ve chvíli, kdy je stránka kompletně načtena včetně posledního bytu posledního obrázku. To v řadě případů nestačí, proto se stále častěji používá událost DOMContentLoaded (definovaná v HTML5), která je vyvolána co nejdříve je to možné, tj. po načtení a zpracování celého dokumentu stránky (čili v momentě, kdy DOM stránky obsahuje i poslední značku stránky) bez ohledu na případné načítání obrázků.

Podporují ji nové verze prohlížečů Firefox, Safari a Opera, naopak v Internet Exploreru se ji javascriptové frameworky snaží emulovat. Článek DOMContentLoaded Inconsistencies (in Browsers and JavaScript Libraries) popisuje problémy, kterými trpí jednotlivé emulace i implementace v prohlížečích. Pokud DOMContentLoaded používáte (a to je pravděpodobné, protože tato událost je v javascriptových frameworcích hojně využívána pod různými označeními – viz zmíněný článek), dejte si pozor na možné problémy. Většinou se jedná jen o krajní případy, ale je dobré o nich vědět.

Komentáře

Odebírat
Upozornit na
guest
0 Komentářů
Nejstarší
Nejnovější Nejvíce hlasů

Rok po Shai-Hulud: co se změnilo na npm a co musíte udělat do ledna

Před rokem začal registrem npm procházet samošířící červ Shai-Hulud. Od té doby se útoky na dodavatelský řetězec JavaScriptu staly pravidelnou záležitostí a npm postupně přepisuje pravidla publikování. Projdeme, co se za ten rok stalo, jak dnes bezpečně publikovat balíček, co musíte stihnout do ledna 2027 a jak se bránit jako uživatel balíčků.

Vercel zrychlil směrování v CDN. Překvapivě pomohly menší bloky

Vercel zrychlil směrování v CDN tím, že začal načítat víc dat najednou. U velkých webů mu po každém nasazení scházely v cache údaje o mnoha jednotlivých cestách, takže je musel opakovaně dohledávat. U nových bloků metadat Vercel naměřil o 91 % kratší dobu tohoto hledání v 99. percentilu. Cesta k výsledku ale vedla přes nečekané zjištění: příliš velký blok se při vyřizování požadavků nevyplatil.

GraphQL: Alternativa k REST API zblízka

Když se dnes navrhuje nové API, většina vývojářů automaticky sáhne po RESTu. Je to pochopitelné: REST je jednoduchý, dobře zdokumentovaný, podporují ho všechny jazyky a frameworky a většina z nás s ním pracuje léta. Přesto se v posledních letech stále častěji objevuje otázka, zda je REST vždy tou nejlepší volbou. Nejčastěji zmiňovanou alternativou je GraphQL, dotazovací jazyk pro API, který vznikl ve Facebooku a který dnes používají firmy jako GitHub, Shopify nebo Netflix.