2011-11-24 143 views
0

我有一个div更改DIV宽动态

<div id="chart" style="position:relative; width: 100%; float:left; height: 220px;"> 
</div> 

,我需要动态改变宽度。我发现像这样的解决方案:

var elem = document.getElementById('chart'); 

    elem.style.width = 70 + "%"; 

但这不行。我哪里错了?在此先感谢...

+0

我建议指定像素宽度的代码,因为不是所有的浏览器能够处理JS中的百分比。 –

+0

你可以看看获取参考框的宽度,计算70%,并设置结果 - 像素 - 作为这个div的宽度 – iGbanam

回答

4

试试这个小提琴:http://jsfiddle.net/TrrCh/

我认为你正在尝试加载HTML之前运行的JavaScript。将它绑定到document.ready并且它应该可以工作

window.onload=function(){ 
    var elem = document.getElementById('chart'); 
    elem.style.width = 70 + "%"; 

} 
+0

是的,你是对的。谢谢..还有一个问题。我可以动态更改财产状况吗? – Jim

+0

是的,同样的方式。 – Niels

0

它对我很好。

使用的浏览器:IE8和FF3。

你可以验证,一旦其他明智的你可以试试这个

elem.style.width = "70%"; 

这是我测试

<body> 
    <div id="chart" style="position:relative; width: 100%; float:left; height: 220px;border:2px Solid #FF0000"> 
    </div> 
</body> 

var elem = document.getElementById('chart'); 
elem.style.width = 70+ "%";