2012-11-05 144 views
4

我想要根據窗口的大小調整容器大小。高寬比是這裏最重要的一個方面,我想根據給定的比例在最大約束的任何方向(高度或寬度)上最大化容器的尺寸。我曾經失敗嘗試了一些事情該是最近期:使用jQuery來根據窗口大小調整容器大小

$(window).load(function() { 
    var h = $(window).height(); 
    var w = $(window).width(); 

    If((h/w)>0.61){ 
     $('#container').css({'height': h, 'width':h*1.64}); } 
     else{ $('#container').css({'height': w/1.64, 'width':w}); } 
}) 

什麼我需要改變,以獲取窗口的大小?有沒有更好的方法來解決這個問題?

在此先感謝您的幫助。我一點都不熟悉JavaScript/jQuery和一直無法找到任何有用的信息......這件事我發瘋...

+0

你需要處理resize事件 –

+0

你需要什麼?保持一個容器充滿整個屏幕? –

+0

對不起,我沒有很好地解釋比例位。我的div需要大約3/5的高度/寬度,並且在沒有滾動條的任何給定窗口中儘可能大。根據窗戶的形狀,高度或寬度可能是限制尺寸。如果窗口是600px H×1200px W,那麼高度是限制因素,div應該是600px H和984px W(600 * 1.64)。如果窗口是600px正方形,那麼寬度是限制因素,div應該是600px W和366px H.我希望div的大小在加載時設置,我需要在調整大小時重置它。謝謝! – user1801105

回答

0

我通常使用這樣的:

function resize() { 
var w = $(window); 
var containerWrap = $('#container-wrap'); 
containerWrap.css({ width:w.width(), height:w.height()}); 

}

我不知道如果你回答問題的比例。

編輯:

這可能是更有幫助的:

$(document).ready(function() { 
var missionWrap = $('#mission-wrap'); 
var w = $(window); 
w.on('load resize',function() { 
    missionWrap.css({ width:w.width(), height:w.height()}); 
}); 

});

1

你想要捕捉的調整大小事件,所以假設你目前的代碼工作,以您的喜好

$(document).ready(function() { 
    $(window).resize(function() { 
     var h = $(window).height(); 
     var w = $(window).width(); 

     if((h/w)>0.61) { 
      $('#container').css({'height': h, 'width':h*1.64}); 
     } 
     else { 
      $('#container').css({'height': w/1.64, 'width':w}); 
     } 
    }); 

}); 

而且我們避免資本我的,如果

相關問題