diana: Problem height/width ermitteln von anzeigebereich

Ich habe folgendes Problem , ich übe gerade und wollte mir die höhe und breite des zur Verfügung stehenden Anzeigebereichs ausgeben lassen . Im Netscape funktioniert das einwandfrei , im IE6 allerdings leider nicht . Kann sich vielleicht jemand den Code anschauen und mir sagen wo mein Denkfehler liegt ? Bin verzweifelt da ich ka habe warum er es mir nicht anzeigt sondern nur ausgiebt undefined . Bin für jegliche Hilfe wirklich dankbar .

//----------------------- JS code --------------------

var x,y;
if (self.innerHeight)
 // alle auser IE
{
 x = self.innerWidth;
 y = self.innerHeight;
}
else if (document.documentElement && document.documentElement.clientHeight)
 // IE 6
{
 x = document.documentElement.clientWidth;
 y = document.documentElement.clientHeight;
}
else if (document.body) // andere IE
{
 x = document.body.clientWidth;
 y = document.body.clientHeight;
}
alert (x+"_"+y);

  1. Hallo diana,

    dein Code sollte eigentlich funktionieren, du darfst halt nur nicht den Fehler machen, document.documentElement.clientHeight und ~Width oder document.body.clientHeight und ~Width auslesen zu wollen, bevor das Dokument geladen ist.

    http://www.quirksmode.org/js/doctypes.html

    Gruß Gernot

    1. Danke Gernot ,
      da lag mein Fehler :)  Wollte es auslesen bevor das Dokument gelesen wurde . Beim Netscape hat es auch funktioniert , allerdings beim IE6 nicht .

      1. Hallo diana

        ... Beim Netscape hat es auch funktioniert , allerdings beim IE6 nicht .

        Natürlich, self bezeichnet das aktuelle Browserfenster, das ist vorhanden bevor das Dokument geladen ist, und seine Eigenschaften innerWidth und innerHeight stehen damit auch sofort zur Verfügung.
        Beim IE verwendest du stattdessen Eigenschaften des Dokuments, die natürlich erst nach dem Laden der Seite existieren.

        Auf Wiederlesen
        Detlef

        --
        - Wissen ist gut
        - Können ist besser
        - aber das Beste und Interessanteste ist der Weg dahin!