获取'px'而不是百分比的大小

时间:2010-05-09 09:06:34

标签: javascript css

我必须编写一个返回div的当前大小(px)的javascript函数。不幸的是,div的权重在%而不是px中指定。

div的风格:position: absolute; width: 100%; height: 100%;

我的宽度返回功能:

function getTableWidth(tableId){
    var tabWidth = document.getElementById('pt1::tabb').children[0].children[0].style.width;
    return tabWidth;
}

tabWidth是'100%'。

是否可以返回px宽度而不是%宽度?

注意:我无法访问任何html / css,因为我正在处理的页面是通过复杂的框架生成的。我只能嵌入javascript。

2 个答案:

答案 0 :(得分:7)

每个浏览器都不同。在大多数情况下,您可以使用DOM元素的clientWidthclientHeight属性。在非IE浏览器中,您可以使用document.defaultView.getComputedStyle()。但是,我建议使用一个框架来处理跨浏览器问题。在jQuery中,您可以使用像$(element).width()这样简单的东西来获取当前宽度(以像素为单位)。

答案 1 :(得分:2)

node.offsetWidth

应该诀窍(在所有浏览器中!)