我有一个div作为我页面顶部的面具。页面本身的内容绝对以页面为中心(参见css)。我使用jQuery根据#nav div距窗口顶部的距离给div .holder一个高度。
CSS:
#pagewrap
{
position:absolute;
width:915px;
margin-left:-458px;
padding:0;
left:50%;
height:100%;
margin-top:-330px;
top:50%;
}
.holder
{
background: none repeat scroll 0 0 black;
height: 0;
position: fixed;
top: 0;
width: 915px;
z-index: 10000;
}
#nav
{
position:fixed;
text-align:center;
width:915px;
height:224px;
margin:0 auto;
background:url(nav-off.png) no-repeat scroll 0 0 transparent;
z-index:1001;
font-family:'Cabin',sans-serif;
}
使用Javascript:
var t = $("#nav");
var offset = t.offset();
$(function()
{
$(".holder").css("height" , offset.top);
});
很简单,但如果窗口大小发生变化,我想更新高度。
答案 0 :(得分:2)
使用jQuery resize
方法检测窗口大小更改。
$(window).resize(reset);
function reset(){
var t = $("#nav");
var offset = t.offset();
$(function() {
$(".holder").css("height" , offset.top);
});
}
$(document).ready(function(){
reset();// set on page load
});
答案 1 :(得分:0)
将整个脚本放入一个函数中,并在document.ready和$(window).resize()上调用该函数