$(window).height()vs $(document).height

时间:2012-12-26 03:52:44

标签: jquery

我有

错误高度的问题
$(window).height();

并得到了类似的问题 here

在我尝试的情况下

$(document).height();

它似乎给我正确的结果

窗口高度返回320

当文档高度返回3552时!

我发现了this问题

但在我的情况下,窗口已经完全加载了,因为我在几次ajax操作之后调用了高度函数

那么知道当前窗口高度的最佳方法是什么?

修改

enter image description here enter image description here

5 个答案:

答案 0 :(得分:116)

好吧,你似乎把他们误认为是他们所做的。

$(window).height()为您提供(浏览器)窗口高度又称视口的无单位像素值。对于Web浏览器,此处的视口是画布的可见部分(通常小于正在渲染的文档)。

$(document).height()会返回正在呈现的文档高度的无单位像素值。但是,如果实际文档的主体高度小于视口高度,则它将返回视口高度。

希望稍微澄清一下。

答案 1 :(得分:10)

这解决了我的问题

var width = window.innerWidth;
var height = window.innerHeight;

答案 2 :(得分:5)

AFAIK $(window).height();返回窗口的高度,$(document).height();返回文档的高度

答案 3 :(得分:1)

jQuery $(window).height();$(window).width(); 仅在您的 html 页面文档类型为 html 时才能完美运行

<!DOCTYPE html>
<html lang="en">
...

答案 4 :(得分:0)

你需要知道它对文档和窗口的意义。

  1. 窗口对象表示浏览器中的打开窗口。click here
  2. Document对象是文档树的根。click here