2014-03-13 90 views
2

如果我創建這樣一個DIV:如何獲得元素的CSS(%對PX)

something = $("<div/>", { id: "something" }).css({ 
    width: "100%", 
    background: "#333333", 
    height: "3px", 
    position: "relative", 
    "-moz-box-sizing": "content-box" 
}); 

,並嘗試與其中任一拿到寬度:

console.log(something.width()); 
console.log(something.css("width")); 

它只返回100.對於我的場景,我有時會使用百分比或特定數量的像素。

如何確定元素的寬度是百分比還是指定的像素量?

+0

http:// stackove可能的重複rflow.com/questions/7786972/how-to-determine-if-width-has-px-or或 –

回答

4

其實下面的回報,單位價值

alert(something.css("width")); 

入住這fiddle

如果該元素被添加到DOM後,它將在問題發生仍然給像素值

+0

問題是,當元素被添加到DOM時,它返回px中的值:http://jsfiddle.net/669QT/4/ –

3

利用indexOf

var w = something.css("width"); 
if (w.indexOf("px") != -1) { 
    // Do something 
} 

DEMO

當你把這段車身寬度爲像素。您可以通過使用$(window).width()或從父容器檢索寬度來計算百分比。真的取決於應用程序。

DEMO (calculate the percentage)

+0

如果風格的百分比是? –

+0

我剛更新了我的答案。 – martynas