document.body.clientHeight不工作? (JavaScript的)

时间:2012-12-22 08:59:43

标签: javascript

document.body.clientHeight没有返回正确的值(在下面的代码中返回0 onload和20 onresize)

<html>
<head>
<title>Untitled</title>
<script type="text/javascript" >
function height1()
{
    document.getElementById("viewheight").innerHTML = document.body.clientHeight;
}
</script>
</head>

<body onload="height1();" onresize="height1();">
<span id="viewheight"></span>
</body>
</html>

任何评论..... plz help!

2 个答案:

答案 0 :(得分:14)

使用document.getElementById("viewheight").innerHTML = window.innerHeight;

尝试

您的脚本行为完全正确。 在开始时,身体的高度实际上为零(身高是文档的高度)。因为没有显示任何内容,所以高度结果为零。 调整打印的“0”跨度超过20px后,结果将保持在20px。

如果您想获得窗口或身体的最大高度,可以使用Math.max( window.innerHeight, document.body.clientHeight )

答案 1 :(得分:-1)

.clientHeight仅为我们提供了一个Integer值。但是这里的尺寸缩放类型缺失了,这就是为什么它只是在+ "px"之后添加document.body.clientHeight无法正常工作。

<script>
    function height1() {
        document.getElementById("viewheight").innerHTML = document.body.clientHeight + "px";
    }
</script>