Sven Rautenberg: ZweiFrames, history.back(), -forward(), -go(x)

Beitrag lesen

Moin!

Wenn jemand nachschauen möchte, worum es geht, schaue er bitte unter der URL http://www.mediafreak.de/appel nach. Aber bitte mit einer Auflösung von 1024x768, da die für die 800er noch nicht für diese Javascript-Funktion umgesetzt wurde.

Jetzt passiert wieder das, was sich niemand wünscht: Kritik an etwas ganz anderem, als gefragt wurde - aber ich kann nicht anders, und es gibt ja auch reichlich Anlaß dafür.

Die von dir genannte Seite läßt mich nicht weiter. Ich kann (wenngleich das ziemlich geheimgehalten wird) zwar auf das Logo klicken, aber dann passiert nichts.

Warum passiert nichts? Weil ich Opera benutze!

Warum passiert denn zum Teufel nichts, wirst du dich fragen, wo doch Opera im "Neues, angepaßtes Fenster öffnen"-Skript explizit berücksichtigt wird? Weil dort versucht wird, den als IE5 getarnten Opera zu entdecken, aber sonst keine Operas. Mein Opera ist aber ein echter Opera, der enthält im User-Agent-String nicht die Worte "compatible" oder "MSIE", sondern nur "Opera". Die Abfrage der Versionsnummer ist dann vermutlich ein weiterer Stolperstein: Ich hätte Version 6 anzubieten, andere benutzen noch Version 5 oder gar 4 oder 3.

Und das zweite: Ich gestehe Webseiten derzeit eine Größe von 807*572 Pixeln zur Anzeige ihrer Daten zu. Neue Browserfenster können ebenfalls nicht größer angezeigt werden. Vielleicht wäre es deshalb als Strategie schlauer, wenn du nicht die verfügbare Bildschirmauflösung abfragst, sondern die verfügbare Fenstergröße. Und dann folgerichtig kein _neues_ Fenster öffnest, sondern das Frameset einfach im bereits benutzten Fenster lädst. Dann muß ich als Opera-Benutzer nicht noch das neue Fenster in den Vollbild-Modus schalten oder es ein wenig nach oben ziehen, und alle sind glücklich (auch die Nutzer von IE und Netscape wird es erfreuen). Und du kannst zusätzlich noch einen javascriptlosen Link auf ein allgemein gültiges Frameset setzen.

Zu deinen Problemen: Die Problematik, daß die History-Funktionen des Browsers bei Verwendung eines Framesets fehlschlagen, ist systemimmanent und läßt sich nicht umgehen. Deswegen sind Frames ja auch so unbeliebt. Du kannst versuchen, durch eigene Links mit entsprechenden Funktionen die Vor- und Zurück-Tasten zu simulieren, aber die browsereigenen Tasten "reparieren" kannst du nicht.

- Sven Rautenberg