knut: resize für NS 4 in mac

hallo jscript experten,

ein kleiner aber feiner bug nervt mich schon den janzen Tag , vileicht habt Ihr ja ne Lösung.
Bei Verwendung von NS 4 in Mac wird beim resizen des Fensters das Layout zerschossen (div Tag),der Versuch mittels JS bei resize ein location.reload() zu machen führt zur Endlosschleife, vergleichende Fensterparameter merkt sich der Mac auch nicht , da der NS 4 bei resize einen " halbreload " macht ? Kapiert ?
Was tun ?

Viele Grüße aus Ddorf

Knut

  1. Hi Knut,

    Vor dem Problem habe ich auch schon mal gesessen....

    Das Problem dabei ist, daß der OnResize-Event auch dann ausgelöst wird, wenn Scrollbalken erscheinen - und das ist bei Seiten, die größer als der Bildschirm sind immer der Fall. Also: Wenn Netscape anfängt die Seite zu laden dann ist rechts kein Scrollbalken da, also ist die innere Fensterbreite z.B. 796 Pixel, dann lädt er weiter und stellt fest, daß er Scrollbalken braucht und setzt sie ein und -Überraschung - plötzlich ist das Fenster nur noch z.B. 788 Pixel breit und das heißt, es wurde Resized und der OnResize-Event und der Reload wird ausgelöst... und so weiter und so fort - dadurch die Endlosschleife. Du kannst dem Problem aber mit dem folgenden Script entgehen:

    <html>
    <head>
    <script language="JavaScript">
    <!--
      var FensterY;         // Hoehe des Fensters
      var FensterX;         // Breite des Fensters
      
    function neuladen()
    {
    if (document.layers && (outerWidth!=FensterXouterHeight!=FensterY)) /*nur  bei Netscape und nur wenn sich die äußere Größe des Fensters geändert hat */
       location.reload();
    }

    function init()
    {
      if (document.layers)
        {
        FensterY  = window.outerHeight; /* äußere Höhe des Fensters beim laden der Seite */
        FensterX  = window.outerWidth;  /* äußere Breite des Fensters beim laden der Seite*/
        }
    }

    //-->
    </script>
    <title></title>
    </head>

    <body onload="init()" onResize="neuladen()">
    ....

    Ich hoffe es klappt

    Gruß Leonhard