Anmelden

Archiv verlassen und diese Seite im Standarddesign anzeigen : javascipt Instanzvariablen initiallisieren



anunnaki
11-01-2007, 08:01
Hallo und Guten Tag an alle Spezialisten von JavaScript,

leider kenne ich mich mit JavaScript nicht so gut aus und habe folgendes Problem:

Ich versuche meine Javascript-Funktionen in Klassen zu packen. Um auf den HTML-Seiten die Instanzen der Klassen zur Verfügung zu haben schreibe ich mir eine main-Funktionin der ich die Instanzen der Klasse anlege. Die main-Funktion lasse ich dann über den onload-Event-Handler im body-Tag ausführen.

Mir schein dies ein etwas umständlicher Weg zu sein.Leider ist mir bisher nichts besseres eingefallen. Nun meine Frage: Gibt es eine andere Möglichkeit, die Instanzen der Klassen zu initialisieren, so das sie mir nach dem Laden der HTML-Seite zur Verfügung stehen?

BlueJay
11-01-2007, 12:40
Was gefällt dir an


var dingens=new irgendne_klasse();

nicht?

anunnaki
11-01-2007, 16:25
Mir gefällt nicht, daß ich immer eine main-Funktion brauche, die ich über den Eventhandler onload im body-tag aufrufen muß.In der main-Funtion steht genau der Code wie Du in angibst. Gerade wenn mehere Scripte in verschiedenen Datein eingebunden werden sollen, ist dies die einzige Möglichkeit,die ich gefunden habe, den Code zum laufen zu bringen. Vieleicht muß es ja so gemacht werden. Vieleicht gibt es aber auch einen bessere Ansatz. Ich will halt nicht dumm sterben.

BlueJay
11-01-2007, 17:42
Dann lagere das Initialisieren doch in JS-Dateien (Libraries) aus.

Ich selbst finde es nicht so schlimm, bei onload die Generierung etlicher Objekte loslaufen zu lassen.

Wenn die Objekte sich nicht am DOM bedienen, kannst du sie auch im js-Block im Header initialisieren.

so long,
BlueJay

anunnaki
12-01-2007, 08:18
Danke BlueJay.
Es scheint wohl ein allgemein üblicher Weg zu sein mit onload zu arbeiten.
Über Deinen anderen Ansatz werde ich mir mal ein paar Gedanken machen.

mit besten Wünschen für das Wochenende
anunnaki

BlueJay
12-01-2007, 09:01
Klar, dass man gerne mit onload arbeitet.
Nur da kann man sicher sein, dass alle DOM-Objekte, auf die man sich möglicherweise bezieht (Bilder, DIV-Ebenen), schon generiert sind.

so long,
BlueJay