Unterschiedliche Fenster mit open() öffnen

Hallo,
ich habe keine Erfahrung mit JavaScript, aber ich möchte das folgende Beispiel von selfhtml in meiner Seite verwenden, um ein zusätzliches Fenster zu öffnen:

Test
function FensterOeffnen (Adresse) {
MeinFenster = window.open(Adresse, „Zweitfenster“, „width=300,height=400,left=100,top=200“);
MeinFenster.focus();
}
Link mit Fenster

Mit einem Fenster klappt das auch schon. Ich habe jedoch mehrer Links auf der Seite und die sich jeweils öffnenden Fenster sollen unterschiedliche Größen haben, weil unterschiedlich viel Inhalt darzustellen ist.
Kann mir jemand sagen, wie ich das Script anpassen muß?

Danke im voraus,
Jan

MeinFenster = window.open(Adresse, „Zweitfenster“, „width=300,height=400,left=100,top=200“);

Ohne es jetzt probieren zu können, fallen mir dazu nur zwei mögliche Schritte ein:

  • Einen anderen Titel verwenden („Drittfenster“, „Viertfenster“, …)
  • Eine andere Zielvariable („Meinfenster2“, …) verwenden oder ganz weglassen. Letzteres beraubt einen natürlich der Möglichkeit, dann darauf den Fokus zu legen. Man könnte dann allerdings auch mal window.open(…).focus(); probieren. Könnte auch klappen.

Die unterschiedlichen Größen sind natürlich direkt einzustellen, wobei beachtet werden muss, dass das die Außengrößen sind. Browserfenster können aber durchaus unterschiedlich große Symbolleisten undso haben, wodurch sich die verfügbare Fenstergröße ändert. Das kann man nur umgehen, indem man keinerlei Symbolleisten anzeigt, also wirklich nur das Darstellungsfenster total nackig. Aber das passiert sowieso, glaube ich, wenn man open() ohne entsprechende Parameter verwendet.

Kristian

Hallo,
danke für die Antwort.
Hab´dazu noch ein paar Fragen:

  • Einen anderen Titel verwenden („Drittfenster“,
    „Viertfenster“, …)

Ich hatte auch schon die Vermutung, das man mit den Begriffen was machen kann. Wie sähe das in dem Beispielfall dann aus? Und woher weiss die Zieldatei, ob es das „zweit-“ oder „drittfenster“ ist? Muß das noch im Link irgendwie mit angegeben werden?
Irgendwie so vielleicht?(Syntaxmässig sicher noch nicht richtig, aber ich mein das Prinzip):

Test
function FensterOeffnen (Adresse) {
MeinFenster = window.open(Adresse, „Zweitfenster“, „width=300,height=400,left=100,top=200“);
MeinFenster = window.open(Adresse, „Drittfenster“, „width=100,height=200,left=100,top=200“);
MeinFenster.focus();
}
Link mit Fenster

Zweiter Link mit Fenster

Es fehlt mir in dem Beispiel irgendwie die Verbindung zwischen dem js im head-Bereich und dem Link im Body.

Sorry, aber wie schon gesagt in JavaScript bin ich völlig unbeleckt.

Gruß
Jan

Grundsätzliches …
Ehm … also Stefan Münz hat jahrelang an SELFHTML geschrieben, und jetzt tut es eine Redaktion. Die Arbeit will ich mir ehrlich gesagt nicht noch einmal machen. Deshalb schlage ich vor, dass Du Dir zumindest mal die Startseiten zu JavaScript zu Gemüte führst. Sonst wirst Du weder alleine, noch hier im Forum weit kommen:

http://de.selfhtml.org/javascript/intro.htm
http://de.selfhtml.org/javascript/sprache/index.htm

Speziell das Unterkapitel zu den Funktionen solltest Du dabei genau studieren, denn das brauchst Du hier:

http://de.selfhtml.org/javascript/sprache/funktionen…

Und wenn Du das getan hat, dann lies nochmal die Seite über die open()-Funktion. Da steht nämlich alles drin.

Versteh mich nicht falsch, ich könnte Dir jetzt einfach erklären, wie es geht, aber wenn Dir die Grundlagen fehlen, bringt es Dir wenig, und die nächste Frage steht nur schon in den Startlöchern.

Ich selbst habe vor 12 Jahren auch lesend angefangen. SELFHTML war damals brandneu und ist seitdem fast die alleinige Quelle meines Wissens über HTML & Co (neben dem Durchstöbern aller möglichen Quelltexte im Netz). Ein Jahr später kam dann übrigens schon WerWeissWas dazu, das auch gerade erst ein, zwei Monate alt war.

In diesem Zusammenhang will ich auch nochmal auf den folgenden Absatz verweisen, insbesondere die letzten drei Sätze:

http://de.selfhtml.org/editorial/hinweise.htm#risiken

Nochmal zurück zum Problem: Du kannst bei Aufruf der eigenen Funktion zwei Parameter übergeben. Im Moment wird nur die Ziel-Adresse übergeben. Du kannst aber als zweites einen Fensternamen übergeben. Den verwendest Du dann bei open() statt eines festen "Zweitfenster"s oderso. Eigentlich sollten sich dann auch verschiedene Fenster öffnen.

In Deinem Beispiel müsste das auch so sein. Allerings überschreibst Du mit dem zweiten Fenster gleich den Rückgabewert vom ersten und gibst damit nur dem zweiten den Fokus. Das ist hier nicht so wichtig, da Du den Rückgabewert eigentlich nur zm Fokussieren brauchst, aber ich will´s erwähnt haben.

Das „Titel=‚Zweitfenster‘“ ist allerdings in diesem Zusammenhang völliger Unsinn. Praktisch weist Du der Variable „Titel“ der Wert „Zweitfenster“ zu. Schön. Das bringt Dir aber nichts, und Du hättest die Variable auch „Otto“ nennen können. Übrigens ist „Zweitfenster“ nicht der TITEL, sondern der NAME des Fensters. Einen TITEL hat nur ein Dokument, nicht aber ein Fenster.

Kristian