Christoph Lipp: Separates Browser-Fenster mit dynamischen Frames

Beitrag lesen

Hallo Stefan,

Vielen Dank fuer die Tips, es funktioniert jetzt!

Und fuer alle anderen Leser noch eine kurze Zusammenfassung, um was es ging:

Problem:
Ich wollte ein separates Browser-Fenster mit Frames oeffnen, wobei der Inhalt eines Frames durch einen Parameter frei gewaehlt werden kann.

Loesung:

  1. Im oeffnenden Fenster ein verstecktes Formular definieren, in dem der Parameter abgelegt werden kann:
    <form name="Daten"><input name="varFrame" type=hidden value=""></form>

  2. Eine Funktion openWindow schreiben, die etwa so aussieht:

function openWindow(filename) {
document.Daten.varFrame.value = filename; /* Parameter setzen */
NewWindow = window.open( 'separat.html', 'NewWindow' ); /* Fenster oeffnen */
NewWindow.focus(); /* Fenster aktivieren */
}

  1. Die aufgerufene Datei separat.html sollte etwa folgenden JavaScript-Bereich erhalten::

<script language="JavaScript">
    Variable= opener.document.Daten.varFrame.value;
    document.write("<frameset rows="70,*" >");
    document.write("<frame src="fix.html" name="frame1">");
    document.write("<frame src=""+Variable+"" name="frame2">");
    document.write("</frameset>");
</script>

(Man muss das ganze Frameset mit JavaScript definieren, da JavaScript zwischen <frameset> und </frameset> offensichtlich nicht interpretiert wird.)

Viele Gruesse
Christoph