动态调整导航div到主内容的大小

时间:2010-03-27 21:48:17

标签: javascript wordpress html resize

问候和你好 我正在尝试组建一个wordpress网站,因为主div中的内容将与每个页面的高度不同,我需要导航侧边栏拉伸到相同的高度。
因此,通过一个小的javascript tom-foolery,我可以使用以下代码使侧边栏具有相同的高度

function adjust(){
    hgt=document.getElementById('content').offsetHeight;
    document.getElementById('sidebar').style.height=hgt+'px';

}
window.onload=adjust;
window.onresize=adjust;  

现在这对于一个长页面来说都很好但是如果内容较小,那么侧边栏的内容会变得一团糟。所以我尝试了 if 语句,如此

function adjust()
{
if (document.getElementById('content').style.height <  document.getElementById('sidebar').style.height){
hgt=document.getElementById('content').offsetHeight;
document.getElementById('sidebar').style.height=hgt+'px';
else
hgt=document.getElementById('sidebar').offsetHeight;
document.getElementById('content').style.height=hgt+'px';
}
}
window.onload=adjust;
window.onresize=adjust;  

但是这没有做任何事情,所以任何想法都在发生?

2 个答案:

答案 0 :(得分:1)

新代码,如果有人需要它

function adjust()
{
    if (document.getElementById('content').offsetHeight < document.getElementById('sidebar').offsetHeight)
        {
        hgt1=document.getElementById('sidebar').offsetHeight;
        document.getElementById('content').style.height=hgt1+'px';
        }
        else
        {
        hgt2=document.getElementById('content').offsetHeight;
        document.getElementById('sidebar').style.height=hgt2+'px';
        }

}
window.onload=adjust;
window.onresize=adjust;

答案 1 :(得分:0)

可能有以下几个原因:

1)因为Waleed说你错过了一个关闭。

2)如果没有为

设置显式样式
document.getElementById('sidebar').style.height

它将返回“”

3)小心假设style.height和offsetHeight是等价的。根据浏览器的不同,一个或另一个可能会考虑边距和paddingC: