Philipp Hasenfratz: Arrays

Beitrag lesen

Halihallo Gabi

Das mit dem Frame klingt ziehmlich logisch. Ich wäre Dir dankbar, wenn du dies etwas genauer erklären könntest.

Vielleicht sollte ich dir erst sagen, was durch diese Lösung umsetzbar wäre:
Im Frame hast du ein verstecktes Formular (bzw. der ganze Frame ist nicht sichtbar und
die Daten werden dort einfach gespeichert, nennen wir ihn "versteckter Daten-Frame").
In diesem Formular kannst du, wie in jedem anderen, Werte speichern und auslesen. Diese
Werte sind skalarer Natur (also Zeichenfolgen oder Zahlen) und können von einem anderen
Thread ausgelesen werden.

[...]

Ich hoffe dass ich dich nicht zu sehr verwirrt habe. Aber wenn das funktionieren würde, wäre ich Dir ausserordentlich dankbar.

Nun, du hast mich verwirrt ;)
Ich versuche mal das, was ich verstanden bzw. gefolgert habe niederzuschreiben.
Korrigiere mich einfach, wo ich mir etwas falsches gedacht habe:

Du hast eine externe .js Datei, welche die Daten, welche für das Generieren der Gallery
von nöten sind speichert. Die Daten sind in Form von Arrays vorgegeben und werden über
einen Parameter X (welchen du global speichern möchtest) "selektiert/angesprochen". Die
Datei enthält des weiteren eine Funktion "generiereGallerie", welche die Gallery
erstellt (ändern der Bilder oder dynamische Generierung des html - Quelltextes).
Dann hast du eine andere html Seite, von der du diese Funktion aufrufst, mit dem
Parameter X, um die entsprechenden Gallerie-Daten zu laden/selektieren; diesen Parameter
X speicherst du im Datenframe, um ihn der Funktion "generiereGallerie" zugänglich zu
machen.

Aufgrund dieser Gedanken (falls sie richtig sind), will ich dir die Frage stellen, warum
du diesen Parameter X nicht direkt der Funktion in der .js Datei übergibst?

Nun ja, vorab kann ich dir schon mal den Lösungsansatz verraten, vielleicht hilft das ja
schon:

Du erstellst eine Seite mit einer Frameset-Definition. Der eine Frame enthält ein
Formular, wo du die Daten (der Parameter X) aufnehmen kannst (der andere die
Galerieseite). Also:

<frameset cols="0,*">
   <frame src="daten.html" name="datenframe" />
   <frame src="galerie.html" name="galerie" />
</frameset>

daten.html enthält:
<form name="datenformular">
   <input type="hidden" name="ParamX" />
</form>

Dann hast du die externe .js Datei, wo du nun diesen Parameter auslesen/schreiben
kannst, über:

parent.frames['datenframe'].document.forms['datenformular'].elements['ParamX'].value

Viele Grüsse

Philipp