Robert: Wofür ist eigentlich "onload" gut?

Noch 'ne kurze Frage:

Wofür ist eigentlich "onload" gut?

Meinen Erfahrungen nach macht es keinen
Unterschied, ob ich eine Javascript-Funktion
im Body-Tag mit onload aufrufe, oder ob
ich das Script direkt in den Head- oder
Body-Bereich einbaue und dort direkt ausführe.

Wo liegt der Unterschied?

(Und wann genau wird ein Onload-Funktions-
Aufruf eigentlich ausgeführt? Sofort beim
Laden der HTML-Datei, oder wenn diese
geladen ist, oder erst wenn auch alle Bilder
u.s.w. geladen sind? Wobei ich denke, daß
letzteres wohl eher nicht der Fall ist.)

Bye,  Robert

  1. »hi

    (Und wann genau wird ein Onload-Funktions-
    Aufruf eigentlich ausgeführt? Sofort beim
    Laden der HTML-Datei, oder wenn diese
    geladen ist, oder erst wenn auch alle Bilder
    u.s.w. geladen sind? Wobei ich denke, daß
    letzteres wohl eher nicht der Fall ist.)

    unterschiedlich, in den meisten Browsern, wenn alles geladen ist, in konqueror sobald die HTML-Datei da ist - daher sieht man dort auch mal leere Bildrahmen wandern ;)

    Grüße aus Bleckede

    Kai

  2. Moin,

    Meinen Erfahrungen nach macht es keinen
    Unterschied, ob ich eine Javascript-Funktion
    im Body-Tag mit onload aufrufe, oder ob
    ich das Script direkt in den Head- oder
    Body-Bereich einbaue und dort direkt ausführe.

    Der Unterschied ist, dass onLoad erst feuert wenn die Seite komplett geladen ist. Das hat den Vorteil das zu diesem Zeitpunkt bereits alle Elemente auf der Seite bekannt sind, was wichtig ist, wenn du mit DHTML/DOM auf diese zugreifen willst. Wenn du deine Befehle direkt in den Seitentext schreibst, werden sie ausgeführt, sobald der Browser beim Laden der Seite darüber stolpert. Wenn deine Befehle nun über der Stelle stehen an der das Element das du gerne benutzen möchtest definiert ist, geht das schief. Daher packst du solche Befehle in eine Funktion und lässt die Funktion von onLoad aufrufen.

    --
    Henryk Plötz
    Grüße aus Berlin