我试图使用javascript做一些动态调整大小。对于这一部分,我需要报告一个容器的当前大小。我写了一个函数来做到这一点(下面),它在chrome中工作得很好…然而,在firefox中,宽度不会被报告。我已经阅读了offsetWidth方法,理论上它应该在firefox中工作。
function currentBoxW() {
return document.getElementById("wrapper").offsetWidth;
}
所有这些报告都是"NaN"。
在实际页面中有更多的函数,但是所有额外的代码都被注释掉了。这是进行报告的实际行。
我错过了什么,或者有一个更聪明的方法来报告使用JS和DOM的宽度?有没有别的方法来获取div的宽度?
谢谢。
你可以有两个问题:
- 确保你已经通过CSS 显式设置了元素(包装器)的宽度
- 确保javascript代码在文档准备好后执行。
window.onload()
或类似的东西,如果你使用任何其他javascript库
如果你可以用jquery代替您可以使用
轻松获取它$(document).ready(function(){
function currentBoxW() {
return $('#wrapper').width();
or
return $('#wrapper').innerWidth(); //depending on the requirement.
}
});