我有一些在某些网站上使用的外部脚本 该脚本试图计算整个HTML页面的高度(而不仅仅是可见部分..)
除了一个奇怪的案例外,一切都很好 - 有些网站使用body { height:100% }
。当JavaScript试图计算整个页面的高度时,它只返回可见高度。
我用过:
document.body.scrollHeight
在Chrome&火狐
答案 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。