jQuery $(window).resize Chrome没有更新

时间:2015-01-30 13:18:48

标签: javascript jquery css google-chrome

我正在使用jquery来获取a的高度,但是当有人调整浏览器大小时,这会发生变化。我使用以下代码:

$(function() {
    var wheight = $('.home').height(); // Get height of browser window
    var wWidth = $(window).width(); // Get width of browser window
    if ( wWidth >= 992 ) {
        $('.home').css('height', wheight);
    }
})
$(window).resize(function() {
    var wheight = $('.home').height(); // Change the height of browser resize
    var wWidth = $(window).width(); // Change the width of browser resize
});

它在Firefox中运行正常但是在Chrome中缩小浏览器窗口时它不起作用,但如果展开浏览器窗口则可以正常工作。知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

您正在调整文档就绪的.home元素。不是在调整窗口大小时。尝试:

var wheight, wWidth;

$(function() {

    wheight = $('.home').height();
    wWidth = $(window).width();

    if ( wWidth >= 992 ) {
        $('.home').css('height', wheight);
    }
});

$(window).resize(function() {

    wheight = $('.home').height(); // Change the height of browser resize
    wWidth = $(window).width(); // Change the width of browser resize

    if ( wWidth >= 992 ) {
        $('.home').css('height', wheight);
    }
});

甚至更好:

var wheight, wWidth;

$(function () {

    resizeHome();
});

$(window).resize(function () {

    resizeHome();
});

function resizeHome() {

    wheight = $('.home').height(); // Change the height of browser resize
    wWidth = $(window).width(); // Change the width of browser resize

    if (wWidth >= 992) {
        $('.home').css('height', wheight);
    }
}