Hi,
öhm ... ich möchte gar nix. Aber ich bin bisher davon ausgegangen, daß eine Javascript-Funktion so ausgeführt werden sollte, wie sie notiert wurde.
jau (wobei das nichts mit der Form der Notation zu tun hat, sondern einfach damit, wie man Funktionen notiert und wie man sie ausführt). In dem Moment, wo window.onload gesetzt wird, soll die Funktion aber gar nicht ausgeführt werden - sondern lediglich die Referenz auf die Funktion gespeichert.
Wir haben leider von wiberg nicht erfahren, ob er seine Scriptgeschichten im Header seines HTML-Dokuments notiert oder im body, und das kann ja gelegentlich einen Unterschied ausmachen.
Hier nicht, onload feuert erst nach dem Body :-) Wichtig ist nur, dass die Funktion schon bekannt ist, sonst kann man keine Referenz drauf speichern.
Ich gehe nicht davon aus, daß wibergs "init()" doppelt aufgerufen würde, wie du ganz leise zu verstehen gibst.
Nicht doppelt.
function foobar() { alert('Hussa!'); }
function init() { alert('Foo'); return foobar; }
window.onload = init();
Anfangs wird 'Foo', onLoad 'Hussa!' ausgegeben.
window.onload = init;
onLoad wird 'Foo' ausgegeben.
Ich möchte allerdings, nur um das vollständigkeitshalber zu sagen, von einem HTML-Dokument nicht unbedingt onLoad mit "lol" begrüßt werden, das ist mir zu minimalistisch *g*
*g* :-)
Cheatah
X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
X-Will-Answer-Email: No
X-Please-Search-Archive-First: Absolutely Yes