--- title: DOMContentLoaded slug: Web/API/Window/DOMContentLoaded_event tags: - Referenz - Web - events translation_of: Web/API/Window/DOMContentLoaded_event original_slug: Web/Events/DOMContentLoaded ---
Das DOMContentLoaded
-Event wird ausgelöst, wenn das initiale HTML-Dokument vollständig geladen und geparst ist. Es wird dabei nicht auf Stylesheets, Bilder und Frames gewartet. Das load-Event
sollte im Gegensatz dazu nur benutzt werden um eine komplett geladene Seite zu erkennen. Es ist ein weit verbreiteter Fehler das load-Event
zu benutzen, obwohl DOMContentLoaded
wesentlich besser geeignet wäre.
{{Note("Synchrones JavaScript pausiert das Parsen des DOM.")}}
{{Note("Es gibt viele Bibliotheken, die Methoden bereitstellen, um bei verschiedenen Browsern zu erkennen, ob das DOM bereit ist.")}}
Wenn DOM so schnell wie möglich geladen werden soll, nachdem der Benutzer die Seite angefragt hat, sollte zum einen das JavaScript asynchron ausgeführt und das Laden der Stylesheets optimiert werden, was bei zu häufigem Einsatz den Aufbau der Seite durch das parallele Laden verlangsamen kann.
Property | Type | Description |
---|---|---|
target {{readonlyInline}} |
{{domxref("EventTarget")}} | Das Zielelement des Events (das oberste Ziel im DOM Baum). |
type {{readonlyInline}} |
{{domxref("DOMString")}} | Der Typ des Events. |
bubbles {{readonlyInline}} |
{{jsxref("Boolean")}} | Gibt an, ob das Event weiter nach oben wandert (bubble). |
cancelable {{readonlyInline}} |
{{jsxref("Boolean")}} | Gibt and, ob das Event abbrechbar ist. |
<script> document.addEventListener("DOMContentLoaded", function(event) { console.log("DOM fully loaded and parsed"); }); </script>
<script> document.addEventListener("DOMContentLoaded", function(event) { console.log("DOM fully loaded and parsed"); }); for(var i=0; i<1000000000; i++) {} // Dieses synchrone Script wird das Parsen des DOMs verzögern. Dadurch wird das DOMContentLoaded-Event erst später ausgelöst. </script>
{{CompatibilityTable}}
Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic support | 1.0[1] | {{CompatVersionUnknown}} | {{CompatGeckoDesktop("1")}}[1] | 9.0[2] | 9.0 | 3.1[1] |
Feature | Android | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | {{CompatVersionUnknown}}[1] | {{CompatVersionUnknown}} | {{CompatGeckoMobile("1")}}[1] | {{CompatUnknown}}[2] | {{CompatVersionUnknown}} | {{CompatVersionUnknown}}[1] |
[1] Bubbling für dieses Event benötigt mindestens Gecko 1.9.2, Chrome 6, and Safari 4.
[2] Internet Explorer 8 unterstützt das readystatechange
-Event, welches genutzt werden kann um festzustellen, wenn das DOM fertig ist. In früheren Versionen des Internet Explorers kann dieser Status festgestellt werden, indem wiederholt versucht wird, document.documentElement.doScroll("left");
auszuführen. Dieser Befehl gibt einen Error zurück, bis das DOM bereit ist.