molily: Javascript Anfängerfrage - Variablen

Beitrag lesen

Hallo,

ich denke mal, das Problem hat damit zu tun, dass die beiden Anweisungen in unerwünschter Reihenfolge ausgeführt werden.

Ich habe also im head-Bereich meier HTML-Datei eine Funktion worin ich eine Variable definiere.

stk1=parent.spframe.document.spform.stk_bild_spiel.value

Klar, das ist eine globale Variable.

Die wird aber erst gesetzt, wenn du diese Funktion aufrufst. Das ist i.d.R. erst der Fall, nachdem das Dokument vollständig geladen wurde.

Laut der selfhtml Definition müsste das eine globale Variable sein, welche im gesamten Dokument gültig ist und jederzeit zur Verfügung steht.

Richtig.

Wenn ich nun diese Variable im body-Bereich verwenden möchte heisst es aber, dass diese Variable undefiniert ist.

<script type="text/javascript" language="JavaScript">
<!--
alert(stk1);
//-->
</script>
...funktioniert nicht.

(Die language-Angabe und die Auskommentarierung kann man sich heutzutage sparen.)

Wenn du einfach ein script-Element im body unterbringst und darin direkt ein alert machst, wird dieser beim Laden des Dokuments ausgeführt. Höchstwahrscheinlich wurde stk1 zu dem Zeitpunkt noch nicht gesetzt. Wann rufst du also die Funktion auf, die stk1 setzt? Nach dem abgeschlossenen laden vielleicht (onload)?

Mathias