我有一个 div 元素,没有定义宽度或高度。它容纳其他元素,并根据它们的尺寸进行模制。 我需要获取 div 的最终大小,但无法检查其内部元素(动态元素)的大小。
我尝试解析该对象的所有属性,但什么也没找到,全部都是“未定义”。
有什么想法吗?
非常感谢
稍后编辑:
我有
<div id="xxx" style="position:relative;">
aaaa
</div>
我尝试过:
var a = mydiv.style.width;
但是没有成功。
我也尝试过:
var getKeys = function (obj) {
var keys = [];
for(var key in obj){
document.write(key+"="+obj.key+"<br>");
}
return keys;
}
getKeys(mydiv.style);
显示所有属性,但没有一个包含任何信息。
jQuery 解决方案工作得很好,但 getCompulatedStyle
正是我正在寻找的,因为我不能在这里使用 jquery。
抱歉,信息很短。
最佳答案
基于没有任何关于您正在做什么的信息,我建议您应该(如果可能)使用 window.getCompulatedStyle()
方法,该方法可以查找呈现的对象的属性通过浏览器:
var elem = document.getElementById('elemId'),
properties = window.getComputedStyle(elem, null),
height = properties.height,
width = properties.width;
如果您有可用的 jQuery,那么您只需使用 width()
和 height()
(或 outerWidth()
/outerHeight()
)方法:
var height = $('#elem').height(),
width = $('#elem').width();
关于Javascript - 获取未定义元素的宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12518162/