如何动态更改Javascript高度

时间:2013-02-13 20:09:17

标签: javascript dynamic height

我知道这个问题已经被问了很多,我向你保证我已经阅读了大部分答案。但是,就我而言,它都没有对我有用。我目前正在尝试这个:

window.onload = function(){

    var winWidth = parseInt(window.innerWidth);
    var winHeight = parseInt(window.innerHeight);

    document.getElementById("copyRight").innerHTML = winHeight;
    //This is so I could make sure the height was actually changing. It is.

    document.getElementById("grandeContain").style.width = winWidth-15+"px";
    document.getElementById("grandeContain").style.height = winheight+"px";
    document.getElementById("contain").style.width = winWidth-105+"px";
    document.getElementById("contain").style.height = winHeight-90+"px";
    document.getElementById("outside").style.width = winWidth-105+"px";
    document.getElementById("outside").style.height = winHeight-90+"px";
    document.getElementById("aroundToolBar").style.height = winHeight-90+"px";
}

然而,无论我做什么,身高都不会改变onload(我也有这个副本并粘贴到onresize函数中,但这也不起作用)。宽度部分工作正常(不仅仅因为这是div的默认设置;我已根据window.innerWidth测试了许多不同的宽度并且它已更改)但高度拒绝改变。我究竟做错了什么?我总是在动态改变身高方面遇到麻烦,如果能够一劳永逸地解决这个问题,那将会很棒。

另外,如果css与它有关,则div树是这样的:grandeContain>contain>(aroundToolBar+outside)其中containposition:relativearoundToolbarfloat:left width:125pxoutside position:relative margin 0 0 0 125px

有谁知道我在这里做错了什么?

此外,由于grandeContain div中的页眉和页脚,其中包含兄弟姐妹,所以105s和90s都是soley。

1 个答案:

答案 0 :(得分:1)

您是否检查过firebug是否有错误?好像在线:

document.getElementById("grandeContain").style.height = winheight+"px";

你有一个拼写错误:应该是winHeight+"px"而不是winheight+"px";可能导致变量未定义错误。