document.body.clientHeight取页面高度的问题

我想得到整个页面的高度,但是我用document.body.clientHeight输出网页的高度时,得到的却是和document.body.offsetHeight相同的值,两个都是取body内元素div的height+padding2+border2,这是为什么呢?谢谢大家!


HTML部分:


<body>

    <div id="abc" class="aaa">测试</div>

</body>

JS部分:


window.onload = function(){

    var body = document.body;

    alert(body.clientHeight)    

};

输出的结果:


alert(body.clientHeight)    //得到1402

alert(body.offsetHeight)    //得到1402

补充:

用innerHeight可以得到窗口高度


摇曳的蔷薇
浏览 1196回答 1
1回答

杨魅力

这不是很正常吗?首先你取的是document.body,offsetHeight:body+其内边距+滚动条+边框clientHeight:body+其内边距- 水平滚动条高度,但是body的滚动条是不包括在其内容高度的,是算作document.documentElement的,所以body的滚动条可以无视,你body没有设置边框所以二者相等,都为body+其内边距
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript