Hallo,
Was habe ich bisher herausgefunden?
Es lag doch am Iframe - besonders an der CSS-Eigenschaft display:none.
Ist diese bei JS-Aufruf auf "inline" gesetzt funktioniert es halbwegs.
Was bringt Dir das, wenn der IFrame doch zunächst unsichtbar sein soll? Hast Du schon visibility:hidden probiert?
Wieso nur halbwegs?
Ein ganz seltsames Phänomen: beim ersten Kontrollaufruf ist der Wert noch immer undefined. Eine zweite Ausgabe (direkt dahinter) gibt tatsächlich das document-Objekt zurück.
Dies hat zur Folge, dass im Javascript das document-Objekt _nur_ nach einer vorherigen alert-Anweisung mit dem Objekt sichtbar ist.
Natürlich habe ich "Dummy-Anweisungen" probiert - aber die haben nicht zu diesem Ergebnis geführt (wirklich nur alert)...
Wann läuft das JavaScript? Läuft es bereits während des Aufbaus der Seite oder als Funktion window.onload oder body.onload? Du kannst den IFrame natürlich erst ansprechen, wenn er gerendert wurde.
viele Grüße
Axel