2012-10-31 31 views
0

这是我的代码,但它不起作用(div始终浮动到页面的顶部,我希望它位于页面的中心)。如何使用jquery动态设置div的高度?

HTML:

<div id="overlay">Stuff</div> 

JQuery的:

$(document).ready(function(){ 
    var height = $('#overlay').height(); 
    var marginTop = (height)/2; 
    document.getElementById("overlay").style.marginTop="-"+marginTop+"px"; 
    document.getElementById("overlay").style.top="50%"; 
}); 

我在做什么错?

回答

1
$(document).ready(function(){ 
    resize(); 
    $(window).resize(resize); 
}); 

function resize() 
{ 
    var height = $('#overlay').height(); 
    $('#overlay').css('margin-top', (($(window).height() - height)/2) + 'px'); 
} 

请记住,您希望窗口高度减去重叠高度。然后除以二,你有你想要的保证金。

+0

谢谢!我注意到,如果我调整窗口的大小,那么div就会保持原来的位置,而不是“重新调整”到新的窗口大小。如何设置脚本以调整窗口大小? –

+0

尝试更新的版本 –