$(document).ready(function(){
var footer = document.getElementById('footer').offsetHeight;
var sidebar = document.getElementById('sidebar').offsetHeight;
document.getElementById('sidebar').style.height = sidebar - footer + 'px';
});
这是有效的,但是当我最小化时,我是否必须在函数中执行此操作并在window.load期间调用它?现在的问题是,当我最小化浏览器时,div再次相互交叉..
谢谢
答案 0 :(得分:2)
我认为你需要绑定到resize事件
$(document).ready(function(){
var sidebar = document.getElementById('sidebar').offsetHeight;
$(window).resize(function(){
var footer = document.getElementById('footer').offsetHeight;
document.getElementById('sidebar').style.height = sidebar - footer + 'px';
});
});
答案 1 :(得分:0)
以下是那些曾经搜索过这种设置的人的解决方案......
<script type="text/javascript">
$(document).ready(function(){
var winh = document.body.clientHeight;
var footer = document.getElementById('footer').offsetHeight;
document.getElementById('sidebar').style.height = winh - 5/2*footer + 'px';
document.getElementById('sidebar').style.marginBottom = footer + 'px';
$(window).resize(function(){
var winh = document.body.clientHeight;
var footer = document.getElementById('footer').offsetHeight;
document.getElementById('sidebar').style.height = winh - 5/2*footer + 'px';
document.getElementById('sidebar').style.marginBottom = footer + 'px';
});
});
</script>
此代码在document.ready期间以及调整大小期间动态设置侧边栏的高度。特别感谢巴特的帮助!