Was ist der Vorteil, Eventhandler erst nach dem Laden der Seite per JavaScript hinzuzufügen, anstatt direkt "onload" usw. im HTML-Code zu haben?
Ein Browser, der kein JavaScript ausführt, stört sich nicht an diesen Attributen. Alle anderen können sofort den fertigen DOM-Tree aufbauen, ohne dass hinterher noch einmal mit JavaScript drübergegangen werden muss, um überall die passenden Handler anzuflanschen. Letzteres ist zudem fehlerträchtig, etwa wenn man sich mal in der ID eines Elementes vertippt oder wenn bei Änderungen im HTML-Code übersehen wird, die externe .JS-Datei auch anzupassen usw.
Besser ist es also IMHO, wenn alles, was zu einem HTML-Element gehört, auch direkt dabei steht und nicht im Nachhinein von fernem Code unerwartet manipuliert wird.