2013-10-07 64 views
0

我使用jQuery動態調整一些元素的大小。使用jQuery獲取以%爲單位的高度/寬度

在大多數情況下,它進展順利,我打電話$(selector).css('height');獲取高度/寬度值或$(selector).height();

它通常爲我提供px中的值,即使我在我的樣式表中設置了%

但有時,它返回的值在%,所以我想知道,有沒有辦法確保獲得值在px?如何「防止」格式?

+0

你能提供一個例子(如的jsfiddle)的時候,你會得到的jQuery返回%? – Adam

回答

1

編輯

我藉此回來 - 我不知道的jQuery曾經返回一個百分比值,即使你在你的CSS指定它 - 內嵌或以其他方式(雖然我將離開我原來的答覆不變)。

你能提供一個你什麼時候會返回%值的例子嗎?

ORIGINAL

.css()會得到你,你直接應用到您的元素值:

<div style="height: 75%;"> 

.height() GET是在DOM本身元素的高度 - 總是以像素爲單位。

1

不要使用

$(selector).css('height'); 

得到的像素值。它返回確定的CSS,這很可能是爲什麼你收到返回的百分比值。使用

$(selector).height(); 

專用於像素值。

0

引述jQuery API

.height()返回一個無單位的像素值

如果你其實想%,你就必須通過測量文件的高度進行計算以及。

0

嘗試

var a = $(window).height(); 
var b = $('#div').height(); 

百分比高度可以計算:

(b/a)*100