怎么才能精确获取页面高度

获取页面的控件位置时,获取页面高只用win.document.body.clientHeight不行吗?为什么要进行如下判断:
win.document.body.clientHeight&&win.document.documentElement.clientHeight
求解

要先判断一下,因为执行是 body 可能没有或没有准备好

要先判断一下,因为执行是 body 可能没有或没有准备好!!

主要是为了判断css1compat模式(添加了xhtml申明)和backcompat模式(怪异模式),xhtml时返回documentElement的实际高度,否则body的