Div-Höhe via JavaScript

visiondpc

Erfahrenes Mitglied
Hallo, ich versuche grade einem Div-Container mittels JavaScript eine feste Größe besierend auf dem Monitorauflösung zuzuweisen. Leider funktioniert das garnicht.

Code:
<SCRIPT LANGUAGE="JavaScript">
if(!document.body.clientWidth)
{
	document.getElementById('frame').style.height=(window.innerHeight-297);
}
else
{
	document.getElementById('frame').style.height=(document.body.clientWidth-297);
}
</SCRIPT>

HTML:
<div id="frame" style="overflow-y:scroll;height:297px;">

Kann mir jemand helfen und verraten, wo ich den Fehler mache?
 
Also die Größe die ausgegeben wird ist schon die richtige denke ich. Wenn ich meinen Browser maximiere und mir dann
Code:
alert(window.innerHeight);
ausgeben lasse bekomme ich nicht die gesamte Höhe der Auflösung (1024) Sondern nur den Anzeigenbereich des Browsers, 858px angezeigt. Verkleinere ich das Browserfenster wird auch nur ein kleinerer Wert angezeigt.

Das Problem ist, dass sich das Div nicht mit den üblichen CSS-Attributen Bottom, Top usw. auf die richtuige Größe ziehen läßt.
 
... und weiterhin musst du die Maßeinheit mit übergeben, nicht einfach nur einen Integer-Wert. Also als String:
Code:
...style.height=(window.innerHeight-297)+"px";
bzw.
...style.height=(document.body.clientWidth-297)+"px";
 
Lass mich raten: Ich vermute o.g. Script steht im Header einer HTML-Datei und döst dort vor sich hin. Wann soll es denn abgearbeitet werden?
Bis dahin hat dein DIV-Block eine Höhe von 297px, so wie es in den Inline-Styles steht. Was ist daran falsch?
 

Neue Beiträge

Zurück