window.onload funktioniert, document.onload funktioniert nicht
mikethet
- css
1 ChrisB0 mikethet
0 1UnitedPower
Hallo,
wie das Thema schon sagt,
binde ich in mein Javscript-Block das Event onload zum Window-Objekt, ruft er die darin referenzierte Funktion init erfolgreich auf.
window.onload = init;
Mach ich das selbe mit document.onload funktioniert es nicht.
Dabei ist das Document-Objekt doch ein Kind-Element vom Window-Objekt.
Sprich die Funktion init müsste doch genauso ausgeführt werden, allerdings halt erst nachdem das Window-Objekt geladen wurde.
Sprich einen "tick" später. Wenn ich das richtig verstanden habe wird nämliche zuerst das Window-Objekt geladen. Lieg ich da richtig.
LG Mike
Hi,
window.onload = init;
Mach ich das selbe mit document.onload funktioniert es nicht.
Dabei ist das Document-Objekt doch ein Kind-Element vom Window-Objekt.
Ja, so ist das halt.
Sprich die Funktion init müsste doch genauso ausgeführt werden, allerdings halt erst nachdem das Window-Objekt geladen wurde.
Nein, müsste sie nicht. Schlicht und einfach, weil die Browser den Event nur für das window-Objekt* feuern, nicht für document.
* nicht nur, bspw. auch für Objekte wie Bilder – aber das ist dann was anderes als der globale load-Event.
Sprich einen "tick" später. Wenn ich das richtig verstanden habe wird nämliche zuerst das Window-Objekt geladen. Lieg ich da richtig.
Nein.
Der load-Event wird nicht „nach unten durchgereicht“.
MfG ChrisB
Ok, verstehe.
Danke euch!
Ich würde das load-Event sowieso nur als Fallback gebrauchen, in den meisten Fällen ist DOMContentLoaded die bessere Option.