4

我正在尝试使用 jQuery 获取当前窗口高度。我打算用这个值设置一个变量,并在调整大小时更新这个值。出于某种原因, $(window).height(); 总是返回零,但 $(document).height(); 返回一个值。为什么会这样?

(为简洁起见,代码被截断)

$(document).ready(function () {

function drawGrid() {

    var context = document.getElementById("gridCanvas").getContext("2d");

    var height = $(window).height();
    var width = height/2/8;
    alert(height);

    $(window).resize(function () {
        // do some stuff
    });

        // do some cool drawing stuff

    }

    drawGrid();

});
4

2 回答 2

6

你能试一下吗

$(window).load(function () { 

代替

$(document).ready(function () { 

看看它是否有效。我认为如果你想获得窗口的大小,你必须等待窗口完成加载。

于 2012-08-18T02:03:23.823 回答
0

在兼容模式下,$(window).height() 和 $(window).width() 在 IE 中返回 0。尝试改用 $(document).height() 或 $(document).width() 。

于 2016-04-14T09:55:24.510 回答