Hi,
ich komme bei dem Problem nicht weiter. Ich habe eine Webseite, bei der der angezeigte Inhalt dynamisch aus einer xml-Datei ausgelesen wird. Demzufolge werden die Werte erst nachdem das DOM aufgebaut ist eingelesen. Das JavaScript dafür wird im body mit onLoad aufgerufen. Nun sollen Teile der HTML-Seite abhängig von den eingelesenen Werten ausgeblendet werden. Dafür habe ich ein weiteres JavaScript geschrieben, welches über die ID der entsprechenden Elemente Cookies mit deren Inhalt setzen soll. (Die Daten werden auf weiteren Seiten benötigt und sollen nicht jedes mal neu eingelesen werden) Allerdings benötige ich bei der Funktion eine Verzögerung für die Ausführung, damit zuvor alle Werte eingelesen sind.
Hm. Du hast ein Javascript, das die Werte einliest. Also kannst Du doch an dessen Ende das Script für das Ausblenden dranhängen. Ganz ohne Timeout oder ähnlich wackliger Methoden, die vom Timing der Vorgänge abhängen …
Ich habe versucht dies mittels setTimeout zu realisieren, aber dann bekomme ich die Fehlermeldung: Uncaught TypeError: Cannot read property 'innerHTML' of null. Wenn ich die Funktion ohne setTimeout aufrufe funktioniert alles.
Dann war das wohl zu früh und das Element existiert noch nicht.
cu,
Andreas a/k/a MudGuard