Javascript - 获取未定义元素的宽度

标签 javascript jquery css dimensions

我有一个 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/

相关文章:

javascript - 单击按钮为 Javascript 为全局变量赋值

javascript - 使用 Javascript 查找本月的第二个和第四个星期二

javascript - 在 Svelte 中检索 JSON 数据

JavaScript 日期到时间戳计算不适用于任何一个月的 8 号和 9 号

javascript - 砌体和延迟加载集成

javascript - jquery中的计算

JQuery 覆盖元素

html - Safari 将内联呈现为带有 :before and :after pseudo elements as display:table-row 的 block

CSS 下拉菜单不应用 Z-Index

javascript - 克隆斑马日期选择器移动图标