html 如何获得完整的页面高度与Javascript?

oug3syen  于 2022-12-16  发布在  Java
关注(0)|答案(4)|浏览(152)

有没有办法得到整个页面的高度,包括滚动的内容?
例如,在下面的页面中,我有一个613px的高度,但是有更多的内容被滚动出来。如果a得到document.documentElement.scrollHeight的值,它给我同样的613px。有什么方法可以得到整个页面的高度吗?

编辑:

我尝试了一些答案,但不知何故,对于这个页面,我总是得到相同的高度(https://material.angular.io/)。有人知道为什么吗?

hl0ma9xz

hl0ma9xz1#

这也会给予你一个可滚动区域的高度

(function() {
    let pageHeight = 0;

    function findHighestNode(nodesList) {
        for (let i = nodesList.length - 1; i >= 0; i--) {
            if (nodesList[i].scrollHeight && nodesList[i].clientHeight) {
                var elHeight = Math.max(nodesList[i].scrollHeight, nodesList[i].clientHeight);
                pageHeight = Math.max(elHeight, pageHeight);
            }
            if (nodesList[i].childNodes.length) findHighestNode(nodesList[i].childNodes);
        }
    }

    findHighestNode(document.documentElement.childNodes);

    console.log('You page hight it', pageHeight);
})();
jmp7cifd

jmp7cifd2#

尝试

window.outerHeight

我认为这将有助于您获得窗口高度与滚动区。

6jygbczu

6jygbczu3#

与@reachtokish类似,document.querySelector('body').scrollHeight将为您提供可滚动页面的整个高度

a5g8bdjr

a5g8bdjr4#

var页面高度=文档.文档元素.滚动高度;

相关问题