【问题标题】:jquery $(window).height() is returning the document heightjquery $(window).height() 正在返回文档高度
【发布时间】:2012-08-19 15:39:29
【问题描述】:

我确定我犯了一个简单的错误,但我只是提醒$(window).height() 它返回与$(document).height() 相同的值。

我在 13" MBA 上,我的浏览器窗口高度在 780 像素到 820 像素之间(大约)最大化,但每次它返回的窗口高度与文档高度相同。在网站上的所有情况下,我都在工作超过1000px。

这是怎么回事?

alert($(window).height());
alert($(document).height()); 

【问题讨论】:

  • 你在用什么浏览器?
  • 这个问题从 jquery-1.8.0 开始出现,旧版本的 jquery 正确地做到了这一点(即使没有设置 DOCTYPE)

标签: jquery


【解决方案1】:

我认为您的文档在窗口中必须有足够的空间来显示其内容。这意味着无需向下滚动即可查看文档的任何其他部分。在这种情况下,文档高度将等于窗口高度。

【讨论】:

  • 文档在每一页都延伸到窗口底部以下。
【解决方案2】:

这是一个问题和答案:Difference between screen.availHeight and window.height()

也有图片,因此您可以实际看到差异。希望这会有所帮助。

基本上,$(window).height() 为您提供浏览器窗口(视口)内的最大高度,$(document).height() 为您提供浏览器内文档的高度。大多数情况下,它们将完全相同,即使有滚动条。

【讨论】:

    【解决方案3】:

    如果没有 doctype 标记,Chrome 会为两个调用报告相同的值。

    添加像<!DOCTYPE html> 这样的严格文档类型会使值按宣传的那样工作。

    doctype 标记必须是文档中的非常。例如,你不能在它前面有任何文本,即使它没有渲染任何东西。

    【讨论】:

    • FireFox 也会执行此报告,除非您使用严格的文档类型,例如
    • 另外,不正确的文档类型会使 twitter bootstrap scrollspy 行为怪异,原因与 $(window).height() 返回文档高度相同。
    • 在我的例子中,我的代码中有一个Response.Write 在一个 ASP 网站上,它在任何 HTML 之前输出一个 1。所以我的文档类型是正确的,但从技术上讲,它不是页面上的第一件事。
    • 我有同样的问题,但 doctype 声明正确:(
    • "doctype 标签必须是文档中的第一部分。例如,您不能在它之前有任何 php 代码,即使它不呈现任何内容。“这怎么可能?浏览器不知道服务器正在运行什么,它只接收带有 HTML 标记的文本文件。如果您运行的是 IIS 而不是 Apache 怎么办?浏览器并不关心服务器在做什么。
    【解决方案4】:

    我遇到了同样的问题,用这个解决了。

    var w = window.innerWidth;
    var h = window.innerHeight;
    

    【讨论】:

    • 太奇怪了,我也在使用正确的文档类型。你的内在高度解决了我的问题!谢谢
    • 同样的问题 - 有有效的文档类型和所有。稍微跨平台:var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth; var h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
    • 真正解决了问题(是的,我有一个文档类型 - 每个页面上的第一件事)
    【解决方案5】:

    如果我们在网页上使用 Doctype,它真的很有效,jquery(window) 将返回视口高度,否则它将返回完整的文档高度。

    在您的网页顶部定义以下标签: <!DOCTYPE html>

    【讨论】:

    • 在你的网页顶部使用这个标签:
    猜你喜欢
    • 2012-09-29
    • 2013-04-22
    • 2016-09-14
    • 1970-01-01
    • 2014-10-31
    • 1970-01-01
    • 2013-10-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多