jQuery $(window).resize()在降低窗口高度时不起作用

Mat*_*zzi 3 html javascript jquery height

我有一个id为"main"的div,我想使用jQuery设置它的高度并使其在window.resize高度上使用函数进行修改但是由于某种原因它只在增加窗口的高度时才有效,当减少它时它不会工作.

这是JS:

function setMainH() {
    var docH = $(document).height();
    $("#main").height(docH - 40);
}

$(function() {
    setMainH();
});

$(window).resize(function() {
    setMainH();
});
Run Code Online (Sandbox Code Playgroud)

编辑:问题出现增加或减少

编辑2:resize()事件似乎被正确调用,我试过

console.log("resizing");
Run Code Online (Sandbox Code Playgroud)

调整大小,它正确记录,所以问题不是这样.

Vil*_*kas 7

$(window).height();   // returns height of browser viewport
$(document).height(); // returns height of HTML document
Run Code Online (Sandbox Code Playgroud)

如此变化

var docH = $(document).height();
Run Code Online (Sandbox Code Playgroud)

var docH = $(window).height();
Run Code Online (Sandbox Code Playgroud)

将解决问题.

  • 在我添加HTML5 doctype之前,这对我不起作用.`<!doctype html>` (5认同)