10

document.body.clientHeightが正しい値を返さない(以下のコードでは、0onloadと20onresizeを返します)

<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ヘルプ!

4

2 に答える 2

18

で試してみてくださいdocument.getElementById("viewheight").innerHTML = window.innerHeight;

スクリプトの動作は完全に正しいです。最初は、体の高さは実際にはゼロです(体の高さはドキュメントの高さです)。何も表示されていないため、高さはゼロになります。印刷した「0」のサイズを変更すると、20ピクセルを超えるため、結果は20ピクセルのままになります。

使用できる窓または本体の最大の高さを取得したい場合Math.max( window.innerHeight, document.body.clientHeight )

于 2012-12-22T09:07:54.760 に答える
-1

.clientHeight整数値のみを提供します。+ "px"しかし、ここではスケールタイプのサイズが欠落しているため、直後に追加するだけで正しく機能しませんdocument.body.clientHeight

<script>
    function height1() {
        document.getElementById("viewheight").innerHTML = document.body.clientHeight + "px";
    }
</script>
于 2014-01-17T13:21:07.347 に答える