我对jQuery函数有一点问题。当window.width

var Wwidth= $(window).width();

if ( Wwidth < 582) {
    $( window ).resize(function() {
    var nWwidth=$( document ).width();
    var marginL = (nWwidth - 292)/2;

    $('.hub-item').css('margin-left',marginL +'px');
    });
}
else {
     $( window ).resize(function() {
    $('.hub-item').css('margin-left','0px');
    });

}


我在控制台中没有任何迷信,但余量不为0。
谢谢大家!

编辑:
正确的代码:

$(window).resize(function() {
    var Wwidth= $(this).width();
    if (Wwidth < 582) {
        var nWwidth=$( window ).width();
        var marginL = (nWwidth - 292)/2;

        $('.hub-item').css('margin-left',marginL +'px');
    }
    else {
        $('.hub-item').css('margin-left','0px');
    }
});


谢谢大家!

最佳答案

您需要将if语句放入$(window).resize()函数中,并每次重新计算Wwidth

$(window).resize(function() {
    var Wwidth = $(this).width();

    if (Wwidth < 582) {
        ...
    }
    else {
        ...
    }
});

07-24 09:17