Frame schließen

chironex

Erfahrenes Mitglied
Hallo Leute,

in einem größeren Projekt habe ich unter anderem eine Seite mit zwei Frames (spaltenweise) geschrieben. Nun möchte ich vom rechten Frame aus mit einem Button den linken schließen, seine Breite auf null setzen oder ihn unsichtbar machen.

Geht das?

Wenn ja, bin ich über Hilfe echt dankbar
 
Das geht...dazu musst die cols-Eigenschaft des Framesets ändern.... das Einfachste dürfte jedoch sein, wenn du einen Link zu der linken Seite setzt(mit dem target "_top")
 
Danke für die Antwort, mir ist nur nicht ganz klar, wie ich die cols-Eigenschaft meines Frames durch drücken eines Buttons verändern kann. In der Frames-Auflistung habe ich ja nur die einzelnen Window-Objekte, auf die ich dann (mehr oder weniger) zugreifen kann. Aber auf das Frameset kann ich ja nicht direkt zugreifen.

Mein erster Ansatz war, mir den Frame zu holen, der ja offenbar ein window-Objekt ist und dort die close-Methode aufzurufen oder die innerWidth auf 0 zu setzen.

Kannst Du mir ein wenig genauer erklären, wie Deine Lösung funktioniert?
 
Du hast dein <frameset>-Element mit der cols-Eigenschaft im obersten Dokument:
ca. so:
Code:
<frameset cols="300,*">
Diese musst du ändern.
Greife vom Frame aus erstamal auf das Dokument im obersten Fenster zu(dort befindest sich der Frameset-Tag)
Code:
top.document
...dort auf das erste Frameset-Element
Code:
getElementsByTagName('frameset')[0]
... und ändere dessen cols-Eigenschaft
Code:
cols='0,*'
..würde das erste, also linke Frame auf 0 Breite setzen.

zusammen:
Code:
<input type="button"onclick="top.documentgetElementsByTagName('frameset')[0].cols='0,*'"value="zumachen">

Beispiel:Frames schliessen
 
Danke,

das hat mir weitergeholfen. Hab mir auch gerade DHTML genauer angesehen, weil ich vermutet habe, dass Du es in der Richtung gemeint haben könntest.
 
Zurück