如果文档高于视口,则执行函数

时间:2013-01-09 09:03:16

标签: jquery height document viewport

这是我经历的一些非常奇怪的行为。我想只在文档高于视口时执行一个函数(即它溢出它并出现一个滚动条)。我使用这段代码:

var docH = $("document").height(),
    viewPortH = $("window").height();

if (docH > viewPortH) {
 // execute functions
}

但没有任何反应,控制台返回:

  

未捕获的TypeError:无法读取null

的属性“parent”

有谁知道问题是什么/我应该使用什么代码来查看文档是否比视口更高?

3 个答案:

答案 0 :(得分:4)

documentwindow是对象而不是选择器。

var docH = $(document).height(),
    viewPortH = $(window).height();

答案 1 :(得分:1)

documentwindow周围不需要引号。

var docH = $(document).height(),
    viewPortH = $(window).height();

if (docH > viewPortH) {
 // execute functions
}

Example fiddle

有了引号,jQuery实际上在DOM中寻找<document /><window />等元素。

答案 2 :(得分:1)

尝试使用这样的文档和窗口: var docH = $(document).height(), viewPortH = $(window).height();