2011-10-27 86 views
0

假設我有一個JS變量和我的HTML數據存儲到它像通過jquery的確定高度和動態HTML元素的寬度

var data = '<div id="tst">here will be my othere html</div>' 

在這種情況下我能確定什麼會是高度& DIV的寬度使用jQuery的tst?

一個人給我的解決方案就像

var $test = $(data).appendTo('body'); 
var size; 

window.setTimeout(function(){ 
size = { 
    height: $test.height(), 
    width: $test.width() 
}; 
$test.remove(); 
}); 

,但上面的代碼看起來有點複雜。如果有人知道簡單的解決方案,那麼請給我一個示例代碼來這樣做。感謝

+1

你不需要使用'.setTimeOut()'。 –

回答

3

這段代碼就足夠了:

//put html from variable at the end of <body> 
var $test = $(data).appendTo('body'); 

//determine height and width and put into one variable for convenience 
var size = { 
    height: $test.outerHeight(), 
    width: $test.outerWidth() 
}; 

請注意,甚至沒有必要使用size。你可以把它分成兩個變量widthheight。這僅僅是個人喜好。

另請注意,我更喜歡使用.outerHeight().outerWidth(),因爲常規的.width()/.height()不計算邊框。這取決於你決定哪些是你真正需要的;)

-1

你能做到這一點

在文件準備的高度將是你從ID在這裏定義它

$(document).ready(function() { 
$("#tst").css({'height' : '100px'}); 
});