Größe von Frames ändern bzw. Frames "wegklappen"
Julian von Mendel
- javascript
Hallo!
Ich weiß das die Hälfte der Leser hier nur hingegangen ist, weil sie am Titel erkannt hat, das schon wieder jemand "böse" Frames verwendet. Ich bitte darum diese Art von "Tipps" zu unterlassen, weil es sich um eine Anwendung handelt, in der Frames m. E. sehr sinnvoll sind, da einzelne Frames äußerst aufwendig zu berechnende Daten enthalten, und größeren Traffic produzieren. Es muss nicht gedruckt werden, barrierefreiheit ist nicht notwendig, da das Ergebnis für einen eingeschränkten Benutzerkreis gedacht ist.
Ich habe drei Frames, zwei davon haben ca. ein Viertel der Fensterbreite und enthalten Optionen und eine lange Liste, das dritte Frame enthält die eigentlichen Ausgaben, die teils von den Auswahlen in den anderen beiden Frames abhängig sind. Zeitweise werden einzelne Frames jedoch nicht gebraucht. Trotzdem belegen sie Platz - das ist schlecht. Ich habe daran gedacht, dass man einfach mit Javascript die Größe eines Frames auf 1px setzt, und schon ist es scheinbar verschwunden...
Gefunden habe ich Ein Posting von 1998, in dem Stefan Münz erklärt, das wäre nicht sinnvoll und Eine Website, die die Frage mit einem knappen "Nein!" beantwortet.
Ich halte wie gesagt sowohl Frames als auch das Ausblenden der Frames in meiner Anwendung für wichtig.
Hat jemand eine bessere Alternative, um mein Problem zu lösen, oder gibt es mittlerweile (sind ja 7 Jahre her *g*) eine Möglichkeit, mit Javascript in den aktuellen Mainstream-Browsern wie Opera, Gecko- bzw. KHTML-Zeugs und IE doch das Frameset zu verändern?
Vielen Dank
Julian
Hi Julian,
IMHO ohne Reload nicht, aber ich bin gespannt, ob's vielleicht doch geht. Wir haben ja hier einige clevere Trickser. Dass Du Dein Frames-Konzept selbst in Frage stellst, liegt sicher an den lieben Mitpostern, die zu dieser Technik immer das Gleiche posten, interessant, warum denen das Spaß macht...
Viele Grüße
Mathias Bigge
Hi Mathias,
IMHO ohne Reload nicht, aber ich bin gespannt, ob's vielleicht doch geht. Wir haben ja hier einige clevere Trickser. Dass Du Dein Frames-Konzept selbst in Frage stellst, liegt sicher an den lieben Mitpostern, die zu dieser Technik immer das Gleiche posten, interessant, warum denen das Spaß macht...
ja, das stimmt. Ich verstehe das teils auch, bei so mancher Webseite machen Frames wirklich die Sache nur komplizierter. Aber an sich halte ich das Konzept, nur einzelne Teile einer Seite neuladen zu können, für äußerst sinnvoll.
Schöne Grüße
Julian
Hallo.
Aber an sich halte ich das Konzept, nur einzelne Teile einer Seite neuladen zu können, für äußerst sinnvoll.
Wenn die Seiten nicht gerade nur lokal, also ohne HTTP-Server, aufgerufen werden sollen, könnte man das auch mit XML HTTP Requests erreichen. Allerdings ist der Aufwand dann ungleich höher.
MfG, at
Hallo,
Aber an sich halte ich das Konzept, nur einzelne Teile einer Seite neuladen zu können, für äußerst sinnvoll.
Wenn die Seiten nicht gerade nur lokal, also ohne HTTP-Server, aufgerufen werden sollen, könnte man das auch mit XML HTTP Requests erreichen. Allerdings ist der Aufwand dann ungleich höher.
danke für das Stichwort, ich habe zwar im Moment nicht vor, das irgendwo einzusetzen, aber die Technik ist doch interessant.
Schöne Grüße
Julian
Hi Julian,
danke für das Stichwort, ich habe zwar im Moment nicht vor, das irgendwo einzusetzen, aber die Technik ist doch interessant.
Christian tut das hier im Forum auf gekonnte Weise, aber das setzt bestimmte Technologien beim Anwender voraus.
Viele Grüße
Mathias Bigge
Hallo.
Christian tut das hier im Forum auf gekonnte Weise, aber das setzt bestimmte Technologien beim Anwender voraus.
Ja, die eine ist HTTP, was ich ja schon implizit erwähnt hatte; die andere ist Javascript, was dem Fragesteller ja angesichts der von ihm gewählten Kategorie klar zu sein scheint. Ohne diese Techniken kann man die Grenze eben nur manuell verschieben.
MfG, at
你好 at,
Christian tut das hier im Forum auf gekonnte Weise, aber das setzt
bestimmte Technologien beim Anwender voraus.Ja, die eine ist HTTP, was ich ja schon implizit erwähnt hatte; die andere
ist Javascript, [...]
Naja, und ein halbwegs aktueller Browser. XMLHttpRequest unterstützt nicht
jeder Browser.
再见,
克里斯蒂安
Hi Mathias,
danke für das Stichwort, ich habe zwar im Moment nicht vor, das irgendwo einzusetzen, aber die Technik ist doch interessant.
Christian tut das hier im Forum auf gekonnte Weise, aber das setzt bestimmte Technologien beim Anwender voraus.
Wo denn? *dummfrag*
Schöne Grüße
Julian
Hallo.
Wo denn? *dummfrag*
Bei Aufklappen von Threads, deren Inhalt dynamisch dann nachgeladen wird.
MfG, at
你好 at,
Wo denn? *dummfrag*
Bei Aufklappen von Threads, deren Inhalt dynamisch dann nachgeladen wird.
Bei allen möglichen Sachen kann das eingesetzt werden ;-) Löschen von
Threads, gelesen markieren, etc, pp.
再见,
克里斯蒂安
Hallo.
Bei allen möglichen Sachen kann das eingesetzt werden ;-)
_Du_ kannst es sicher auch bei allen unmöglichen Sachen einsetzen.
MfG, at
你好 at,
Bei allen möglichen Sachen kann das eingesetzt werden ;-)
_Du_ kannst es sicher auch bei allen unmöglichen Sachen einsetzen.
Hehe, danke für das Kompliment, aber auch ich koche nur mit Wasser ;-)
再见,
克里斯蒂安
Hi,
Zeitweise werden einzelne Frames jedoch nicht gebraucht. Trotzdem belegen sie Platz - das ist schlecht. Ich habe daran gedacht, dass man einfach mit Javascript die Größe eines Frames auf 1px setzt, und schon ist es scheinbar verschwunden...
Hat jemand eine bessere Alternative, um mein Problem zu lösen,
Ja: lasse den Frames ihren border und die Möglichkeit, sie zu verschieben.
freundliche Grüße
Ingo
Hallo Ingo,
Zeitweise werden einzelne Frames jedoch nicht gebraucht. Trotzdem belegen sie Platz - das ist schlecht. Ich habe daran gedacht, dass man einfach mit Javascript die Größe eines Frames auf 1px setzt, und schon ist es scheinbar verschwunden...
Hat jemand eine bessere Alternative, um mein Problem zu lösen,
Ja: lasse den Frames ihren border und die Möglichkeit, sie zu verschieben.
das habe ich gemacht. Aber diese unpraktischen Border dauernd rumzuschieben ist wirklich unschön. Wesentlich praktischer ist da ein Knopf, auf den man draufdrückt, und es ist weg.
Schöne Grüße
Julian
Hi,
das habe ich gemacht. Aber diese unpraktischen Border dauernd rumzuschieben ist wirklich unschön.
Nicht unbedingt. Der User hat hierüber die Möglichkeit, die Rahmen für seine Fenstergröße passend einzustellen und kann z.B. bei sehr großen Fenstern auch drauf verzichten.
freundliche Grüße
Ingo
Hallo,
Ich halte wie gesagt sowohl Frames als auch das Ausblenden der Frames in meiner Anwendung für wichtig.
Hat jemand eine bessere Alternative, um mein Problem zu lösen, oder gibt es mittlerweile (sind ja 7 Jahre her *g*) eine Möglichkeit, mit Javascript in den aktuellen Mainstream-Browsern wie Opera, Gecko- bzw. KHTML-Zeugs und IE doch das Frameset zu verändern?
ja, indem du Iframes verwendest. Das würde zwar ein Redesign verlangen, aber du würdest dafür die gewünschten Eigenschaften wie Größenänderung und Ausblenden erhalten.
cu,
ziegenmelker
Hi,
Ich halte wie gesagt sowohl Frames als auch das Ausblenden der Frames in meiner Anwendung für wichtig.
Frameresize geht bei IE, Opera 7.x, Mozilla (afaik NC 7.0 noch nicht, erst 7.1, da muesstest Du nochmals genau testen) indem Du auf die Eigenschaft cols zugreifst. Du kannst also einen Frame auf 0 setzen und verschwinden lassen:
top.document.getElementById("myframe").cols= "0,*";
Zuverlaessiger erscheint mir allerdings die Arbeit mit iframe.
Gruesse, Joachim
Hallo Joachim,
Frameresize geht bei IE, Opera 7.x, Mozilla (afaik NC 7.0 noch nicht, erst 7.1, da muesstest Du nochmals genau testen) indem Du auf die Eigenschaft cols zugreifst.
Konqueror macht ebenfalls ohne Probleme mit. Safari konnte ich nicht testen, weil das Powerbook grade zu weit weg steht... Netscape wird von niemandem der die Software benutzt verwendet, ich hab auch keinen da um zu testen.
top.document.getElementById("myframe").cols= "0,*";
Vielen Dank für diese Zeile! Eigentlich sehr naheliegend, wenn man mal drüber nachdenkt.
Zuverlaessiger erscheint mir allerdings die Arbeit mit iframe.
Ich werde, wenn ich mal wieder ein ähnliches Problem habe, darauf achten, iframes zu verwenden, die ja eigentlich nur Vorteile haben. Jetzt hab' ich aber keine Lust drauf alles zu ändern, wo es doch auch so funktioniert.
Danke auch an die anderen.
Schöne Grüße
Julian
Hi,
Gefunden habe ich Ein Posting von 1998, in dem Stefan Münz erklärt, das wäre nicht sinnvoll
Das war wohl etwas "ex cathedra". Ich wüßte jedenfalls nicht, warum man dies nicht sinnvoll nutzen können sollte. Es kommt halt immer darauf an, wie und warum man etwas macht.
Ich selbst verwende diese Methode (wenn auch mit 0px-Frames ;-)) auf meiner Coding-Website (für Newbees: als Win95-Desktop ;->).
Gruß, Cybaer