Wahres "innerWidth" herausbekommen
Christian
- javascript
Hi,
ich möchte die tatsächliche Anzeigebreite des Browserfensters herausbekommen, d.h. den Bereich in dem das Dokument auch wirklich sichtbar ist, d.h. OHNE Scrollbars.
Wenn ich in Netscape/Mozilla Browsern innerWidth abfrage, ist dort immer die Breite der Scrollbars inklusiv!
Bei MSIE kann ich das so machen: document.body.clientWidth
Bei 1024 x 768 Pixeln und Vollbildmodus und vertikaler Scrollbar ist dort ein Wert von 1003 gespeichert. Dieser ist abzüglich der Scrollbar!!
Wie kann ich das unter den anderen Browsern auch erreichen?
Oder gibts ne möglichkeit die Breite der Scrollbar rauszukriegen?? dann kann ich die ja einfach anziehen!
Gruß
Christian
Hi,
ich möchte die tatsächliche Anzeigebreite des Browserfensters herausbekommen, d.h. den Bereich in dem das Dokument auch wirklich sichtbar ist, d.h. OHNE Scrollbars.
Meine Versuche haben ergeben, dass das nicht möglich ist.
Wenn ich in Netscape/Mozilla Browsern innerWidth abfrage, ist dort immer die Breite der Scrollbars inklusiv!
Bei MSIE kann ich das so machen: document.body.clientWidth
Beim Mozilla auch.
Bei 1024 x 768 Pixeln und Vollbildmodus und vertikaler Scrollbar ist dort ein Wert von 1003 gespeichert. Dieser ist abzüglich der Scrollbar!!
Das stimmt nicht, bzw. das stimmt nur bei dir, bei mir sind es 984 im IE und 1009 im Mozilla.
Wie kann ich das unter den anderen Browsern auch erreichen?
Oder gibts ne möglichkeit die Breite der Scrollbar rauszukriegen?? dann kann ich die ja einfach anziehen!
Nicht das ich wüßte.
Die genaue Größe des Fensters ist meiner Erfahrung nach nicht rauszukriegen. Ich versuche schon seit längerem nach einer Möglichkeit um ein Fenster exakt zu öffnen, bis jetzt klappt es nicht und nicht nur die Browser unterscheiden sich, es unterschieden sich auch die Versionen der Browser.
Struppi.
Hi,
Bei MSIE kann ich das so machen: document.body.clientWidth
Beim Mozilla auch.
Wirklich ??? Sicher das du das nicht mit offsetWidth verwechselst? Das kann Mozilla definitiv! Aber clientWidth auch??
Das stimmt nicht, bzw. das stimmt nur bei dir, bei mir sind es 984 im IE und 1009 im Mozilla.
Ich vermute wirklich, das du offsetWidth verwendet hast! Das würde sogar hinhauen! 984 = 1024 - 2*bodyMargin - scrollbar = 1024 - 20 - 20
clientWidth berücksichtigt meines Wissens kein margin bei Elementen.
Dabei ist mir noch so eingefallen: Wenn das Dokument breiter als das Fenster ist, d.h. wenn es horizontale Scrollbars gibt, dann stimmt der body.offsetWidth/clientWidth auch nicht mehr.
Gruß
Christian
Hi,
Bei MSIE kann ich das so machen: document.body.clientWidth
Beim Mozilla auch.
Wirklich ??? Sicher das du das nicht mit offsetWidth verwechselst? Das kann Mozilla definitiv! Aber clientWidth auch??
Das ist die Funktion:
function test()
{
alert(document.body.clientWidth);
}
Struppi.