Guten Abend alle zusammen!
Ich moechte gerne per Javascript die Hoehe einer dargestellten HTML-Seite ermitteln. Genauer: NICHT der Innenbereich des Browserfensters, sondern der sichtbare Bereich + die Hoehe des unsichtbaren Bereichs, den ich erst durch das Herunterscrollen zu sehen bekomme.
Ich hab mich schon halbtot gesucht und bin etwa soweit gekommen:
fuer IE:
document.body.scrollHeight
a) Funktioniert es nur, wenn der JavaScript-Block mit im body-Tag
steht (sonst kennt er das Objekt nicht - wahrscheinlich weil
es vorher wohl nicht existiert...)
b) Habe ich gerade hestgestellt, dass der Wert sinkt, wenn ich
das Browser-Fenster verkleinere... daher gehe ich davon aus,
dass mir scrollHeight bei dem gesuchten nicht weiterhilft,
da ich ja die Hoehe des Dokumentes wissen will.
fuer NS:
document.meinLayer.clip.height
a) Funktioniert bei mir gar nicht...
bzw. ich mache etwas falsch
b) hilft mir clip.Height ueberhaupt weiter?
Ist das das richtige fuer das was ich will?
fuer NS 6:
welche Moeglichkeiten gibt es da?
Hier der unfertige Quellcode:
<html>
<head>
<title></title>
</head>
<body marginwidth="0" marginheight="0" leftmargin="0" topmargin="0">
<layer id="meinLayer">
<SCRIPT language="JavaScript">
if (document.layers) {
alert(document.meinLayer.clip.Height);
}
if (document.all) {
alert(document.body.scrollHeight);
}
</SCRIPT>
Text Text Text Text Text Text Text Text Text Text Text
</layer>
</body>
Ich weiss noch nichtmal, ob mein Ansatz hier der richtige ist.
Letztendlich geht es darum, dass, wenn das dargestellte Dokument hoeher als 520 Pixel ist, ich ein bestimmtes leer.gif um 10 Pixel schmaler darstellen moechte, um so Platz fuer den vertikalen Scrollbalken zu machen, so dass kein horizontaler Scrollbalken entsteht.
Also:
Wenn Seitenlaenge > 520 dann
document.write(<img src="leer.gif" height="1" width="25">)
sonst
document.write(<img src="leer.gif" height="1" width="15">)
Oder gibt es eine Alternative, mit der man feststellen kann (im frameset ist scrolling=auto eingestellt), ob der vertikale Scrollbalken auftaucht oder nicht?
mfg
Phil