Hi,
Natürlich nicht. Es ist ja auch kein Fehler, einem existierenden Javascript-Objekt beliebige neue Eigenschaften anzuhängen.
Was heisst "anhängen"?
Einem JavaScript-Objekt kannst du beliebige neue Eigenschaften verpassen, die es bisher noch nicht hatte - einfach, in dem du der Eigenschaft einen Wert zuweist.
Dann wäre
window.onload = sortable_init;
<body onload=""><!-- als Platzhalter stehen gelassen -->
doch kein Problem. Ich hänge dem Eventhandler "nichts" an. Aber der löscht offenbar den vorherigen Inhalt.
Natürlich löscht es den.
Ein onload-Attribut im BODY-Tag und eine Zuweisung an window.onload werden vom Browser gleich behandelt.
Wenn du jetzt erst in deinem Script window.onload eine Funktionsreferenz zugewiesen hast, und der Browser danach auf ein onload-Attribut im BODY-Tag trifft, dann überschreibt er den bisherigen Handler für den Load-Event mit einem neuen, in dem er den Inhalt des Attributes in eine Funktionsreferenz übersetzt - bei leerem Attributwert halt in eine „leere“ Funktion, die einfach nichts macht (bzw. in so etwas wie void oder null).
MfG ChrisB
“Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]