-7

假设我们有一个表单可以加载到另一个站点的 iframe 中。现在它有一个新版本,并且必须与以前的表单匹配相同的高度才能完美地适合加载它的站点。

即使使用 JavaScript,您如何检查网页的高度是多少?然后我可以检查两者并进行比较。就像您的页面具有的垂直像素数一样。

编辑

忽略 iframe,只查找当前 html 文档的高度,仅此而已。

4

6 回答 6

4

可以使用以下方法获取文档的高度:

jQuery

$(document).height()

仅限 Javascript(跨浏览器工作)

function getDocHeight() {
    var D = document;
    return Math.max(
        D.body.scrollHeight, D.documentElement.scrollHeight,
        D.body.clientHeight, D.documentElement.clientHeight
    );
}



对于Max(documentHeight, browserHeight)使用:

jQuery

Math.max($(document).height(), $(browser).height());

仅限 Javascript(跨浏览器工作)

function getDocHeight() {
    var D = document;
    return Math.max(
        D.body.scrollHeight, D.documentElement.scrollHeight,
        D.body.offsetHeight, D.documentElement.offsetHeight,
        D.body.clientHeight, D.documentElement.clientHeight
    );
}
于 2013-10-18T11:25:14.927 回答
1

从您的问题中很不清楚您实际上在问什么。但是如果你想获得父母文件的高度,那么你需要使用:

var parents_height = parent.document.body.clientHeight;

这将返回父窗口文档的高度。但是,它只会在 iframe/popup 位于同一域中时返回它。

如果您只对当前文档高度感兴趣,请使用:

var height = document.body.clientHeight;

但是,如果您在 CSS 中操纵了 body 标签的高度,您可能会遇到问题。像这样使用 jQuery 可能会更好:

$(document).height();
于 2013-10-18T11:19:32.550 回答
0

scrollHeight 属性怎么样

https://developer.mozilla.org/en-US/docs/Web/API/element.scrollHeight

于 2013-10-18T11:18:40.163 回答
0

尝试这个

var _docHeight = (document.height !== undefined) ? document.height : document.body.offsetHeight;
    var _docWidth = (document.width !== undefined) ? document.width : document.body.offsetWidth;
于 2013-10-18T11:17:47.537 回答
-1

您可以使用jQuery高度功能:

$(document).height();
于 2013-10-18T11:15:27.463 回答
-1

这行简单的 javascript 代码将为您提供答案

document.body.offsetHeight;

请记住,您需要在加载整个文档后获取它

<script>
window.onload = function() {
    document.body.offsetHeight;
}
</script> 
于 2013-10-18T11:16:02.853 回答