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

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

var docH = $("document").height(), viewPortH = $("window").height(); if (docH > viewPortH) { // execute functions } 

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

未捕获的TypeError:无法读取null的属性“parent”

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

documentwindow是对象而不是选择器。

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

您不需要documentwindow周围的引号。

 var docH = $(document).height(), viewPortH = $(window).height(); if (docH > viewPortH) { // execute functions } 

示例小提琴

有了引号,jQuery实际上在DOM中寻找像这样的元素。

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