molily: Funktion automatisch ausführen ohne onLoad

Beitrag lesen

function dl (){

var f=new Array('functionsname1''functionsname2''functionsname3''functionsname4');
for(var i=0;i<f.length;i++)
windowf[i];
}


> `<body onload="dl()">`{:.language-html}  
>   
> Ich mag's eben gerne elegant. ;)  
  
OMFG, das ist alles, aber nicht elegant! Jedenfalls nicht in einer funktionalen Sprache wie JavaScript.  
  
- Keine Event-Handler-Attribute im HTML.  
- Keine zentrale Initialisierungsfunktion  
- Kein zentraler Array mit globalen Funktionsnamen  
  
Besser:  
  
- Eine [addEvent-Funktion](http://molily.de/js/einbindung.html#addevent-helfer) (oder ein Framework der Wahl)  
- Diese mehrfach aufrufen immer dort, wo ein Modul notiert wird  
  
function bla () {}  
addEvent(window, "load", bla);  
  
Modul = {  
   init: function () {}  
};  
addEvent(window, "load", Modul.init);  
  
usw.  
  
Die Pflege einer zentralen Funktion fällt dann weg, auch die Funktionsnamen müssen nicht als Strings notiert werden, was den Code wartbarer macht.  
  
- Nächster Schritt: [DOMContentLoaded](http://molily.de/js/einbindung.html#domcontentloaded-crossbrowser) statt window.onload (das können alle Frameworks von Haus aus)  
  
Mathias

-- 
[JavaScript-Erweiterung für das SELFHTML-Forum](http://molily.de/selfhtml-forum-js/)