jquery检测窗口调整大小

Jga*_*mel 3 jquery dynamic detect width window-resize

我有一个关于我正在研究的关于检测窗口调整大小的网站的问题.我知道这已经在前面讨论过了,我已经阅读了很多讨论,但却无法让它发挥作用.我只是在学习jquery.

 $(function(){
    var viewPortWidth = $(window).width();
    if (viewPortWidth > 1900)
    {
       $('#mainbio, #footerlinks').addClass('extraWide')
    }
    else if (viewPortWidth > 1400)
    {
       $('#mainbio, #footerlinks').addClass('wide')
    }
    else if (viewPortWidth > 1000) 
    {
       $('#mainbio, #footerlinks').addClass('standard')
    }
    else if (viewPortWidth > 700)
    {
       $('#mainbio, #footerlinks, #twitter, #facebook, #flickr,   #lastfm').addClass('narrow')
    }
    else 
    {
       $('#mainbio, #footerlinks, #twitter, #facebook, #flickr, #lastfm').addClass('extraNarrow')
    }
 });
Run Code Online (Sandbox Code Playgroud)

这是我到目前为止,它工作正常,但只在初始加载.我想知道是否有人可以帮助我调整它以便它可以动态工作 - 所以我可以看到更改,如果我手动调整我的浏览器,而不刷新?

谢谢!

dev*_*dev 7

您可以使用回调此功能.resize().

例如

var detectViewPort = function(){
    var viewPortWidth = $(window).width();
    if (viewPortWidth > 1900)
    //...The rest of your above code.
};

$(function(){
  detectViewPort();
});

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

可能有另一种/更好的方法,但这是我所知道的选项.