ptak: popup-fenster

Beitrag lesen

Hallo Heike

Hier ein paar prinzipielle Möglichkeiten:

Leeres Fenster
<A HREF="javascript:FensterOeffnen('')">Leeres Fenster</A>
Öffnen eines leeren Fensters. Die einfache Variante.

Fenster mit Dokument
<A HREF="javascript:FensterOeffnen(location)">Fenster mit Dokument</A>
Öffnen eines Fensters mit einer vorgegebenen URL statt einer Verzweigung zu der URL im gleichen Fenster.

Fenster mit freiem Text
<A HREF="javascript:FensterOeffnenText()">Fenster mit freiem Text</A>
Öffnen eines Fensters mit dynamischen Text, das heißt als reines Ausgabefenster.

Fenster mit Rahmen
<A HREF="javascript:FensterOeffnenRahmen('', '')">Fenster mit Rahmen</A>
Öffnen eines Fensters mit Rahmen. Diese Möglichkeit eröffnet die Chance, Rahmen gezielt und vor allem dynamisch zu gestalten.

Fenster mit Rahmen und Dokumenten
<A HREF="javascript:FensterOeffnenRahmen(location, location, location)">Fenster mit Rahmen und Dokumenten</A>
Öffnen eines Fensters mit einer beliebigen Anzahl von Dokumenten, deren URLs als Parameter aufgelistet sind.

Quelltext.
//
// Fensterverwaltung
//

function FensterOeffnen(url)
{
  // Fenster oeffnen (URL als Parameter)
  MeinFenster = open(url)
}

function FensterOeffnenText()
{
  // Fenster oeffnen (kein URL)
  MeinFenster = open()

// Dokument des Fensters oeffnen
  MeinFenster.document.open("text/html")

// In das Dokument schreiben
  MeinFenster.document.write("Dieser Text erscheint direkt in dem Fenster.")
  MeinFenster.document.write("<P>Auch HTML-Formatierungen sind möglich.</P>")
  MeinFenster.document.writeln("<P>Ob <B>fett</B>, ob <I>kursiv</I>, alles funktioniert.</P>")
  MeinFenster.document.write("<TABLE BORDER=2>")
  MeinFenster.document.write("<TR><TD>Selbst</TD><TD>Tabellen</TD></TR>")
  MeinFenster.document.write("<TR><TD>sind kein</TD><TD>Problem.</TD></TR>")
  MeinFenster.document.writeln("</TABLE>")

// Dokument schliessen
  MeinFenster.document.close()
}

function FensterOeffnenRahmen()
{
  var argv = FensterOeffnenRahmen.arguments
  var argc = FensterOeffnenRahmen.arguments.length

// Fenster oeffnen
  MeinFenster = open()

// Dokument des Fensters oeffnen
  MeinFenster.document.open("text/html")

MeinFenster.document.writeln("<HEAD><TITLE>Beispiel</TITLE></HEAD>")
  MeinFenster.document.write("<FRAMESET COLS='")
  for(i = 0; i < argc - 1; i++)
  {
    MeinFenster.document.write(Math.floor(100/argc) + "%,")
  }
  MeinFenster.document.write("*")

MeinFenster.document.write("'>")
  for(i = 0; i < argc; i++)
    MeinFenster.document.write("<FRAME SRC='" + argv[i] + "'>")
  MeinFenster.document.writeln("</FRAMESET>")

// Dokument schliessen
  MeinFenster.document.close()
}

Die dargestellten Funktionen stellen verschiedene Möglichkeiten des Öffnen von Fenstern dar.
FensterOeffnen
Öffnet ein Fenster ohne weitere Einschränkung des Aussehens. Als einziger Parameter kann ein URL angegeben werden.
FensterOeffnenText
Öffnet - als Beispiel - ein Fenster und schreibt dorthin Text im HTML-Format.
FensterOeffnenRahmen
Öffnet ein Fenster, wertet die Parameter aus und legt so viele Rahmen an, wie URLs angegeben wurden.
Solange kein Name für ein Fenster angegeben wird, wird mit jedem Aufruf der Methode open ein neues Fenster geöffnet.

Jetzt ist es kein problem mehr, oder ?

Grüße ptak