Christine Kuehnel: onResize=document.refresh() ?

Beitrag lesen

Hallo,

Ich habe einen Frame, indem (konkret) Werbung dargestellt wird, und zwar zwei Banner nebeneinander. Jetzt möchte ich dafür sorgen, daß nur ein Banner dargestellt wird, wenn die innere Breite eine bestimmte Grenze unterschreitet.

[...]

Schwierig wird es aber bei einem Resize. Ich möchte, daß beim Verändern der Fenstergröße die Seite neu aufgebaut wird. Dazu sind mir zwei (suboptimale) Lösungen eingefallen:
a) <body onResize=location.reload()> - ich möchte aber die Seite nicht vom Server neu anfordern...

reload() fordert nicht neu an.
Zumindest sagt Netscape:
   location.reload([true])
   Parameters
   true forces an unconditional HTTP GET of the document from the server...

Also theoretisch sollte ohne (true)  der Server aussen vor bleiben.
Allerdings habe ich da so meine ganz praktischen Bedenken, eigentlich weniger, dass auch ohne (true) vom Server geholt wird, sondern eher, dass die Seite trotz (true) aus dem Cache oder vom Proxy kommt.
An sich sollen hier naemlich die Usereinstellungen im Browser ebenso wirken wie sonst auch, also - immer / 1x pr Sitzung / nie -. Nur, das haut ja auch nicht hin.

Aber, das war eigentlich mehr nebenbei.
Du willst ja, dass _nicht_ geholt wird.
Dann muesste reload() oder von mir aus history.go(0) - das nehme ich meistens - klappen.

b) Komplette Ausgabe in einer JavaScript-Funktion, die sowohl in Laufzeit als auch onResize aufgerufen wird. Das ist aber noch schlimmer, weil ich dann den ganzen Code noch einmal in einem <noscript>-Bereich brauche. Außerdem halte ich nicht viel davon, eine Seite komplett per JavaScript zu schreiben.

Nein, finde ich auch nicht so toll.

Willst Du noch 'ne Idee?
Layer benutzen, je nach Fenstergroesse positionieren, wenn zu klein, einen unsichtbar machen.
Einen davon muesste man per Javascript ausgeben, damit ohne JS und mit aelteren Browsern wenigstens einer zu sehen ist.
Aufwendig? Ja.
Notwendig? Wohl nein, es sei denn, man schiesst gern mit  Kanonen auf Spatzen. <g>

Spass beiseite, ich halte die Loesung von oben fuer praktikabel.

Christine