整个HTML页面的大小(高度为100%时)

时间:2011-09-13 07:36:00

标签: javascript html css

我有一些在某些网站上使用的外部脚本 该脚本试图计算整个HTML页面的高度(而不仅仅是可见部分..)

除了一个奇怪的案例外,一切都很好 - 有些网站使用body { height:100% }。当JavaScript试图计算整个页面的高度时,它只返回可见高度。

我用过:

document.body.scrollHeight

在Chrome&火狐

2 个答案:

答案 0 :(得分:5)

发现了回答:

var body = document.body,
html = document.documentElement;
var height = Math.max( body.scrollHeight, body.offsetHeight, 
                   html.clientHeight, html.scrollHeight, html.offsetHeight );

jQuery不是一个选项,因为其他网站使用我的脚本,我不能告诉他们使用jQuery

答案 1 :(得分:0)

这实际上取决于你想要计算高度的元素。

如果html元素的高度设置为100%,则它将是浏览器窗口的高度。然后由于某些内容,身体可能高于那个,但是html元素的高度不会改变,它将保持不变。

所以它实际上取决于页面中的哪个元素导致内容增加高度。你应该测量那个元素的高度,但是你怎么知道它是哪个元素呢?

检查this example