2012-10-03 81 views
7

這是怎麼鍍鉻顯示div的寬度和高度:爲什麼jQuery.height()在Chrome上獲得不同的結果?

enter image description here

這是正確的,事實上的高度1466.但是,如果我這樣做:

$(document).ready(function() { 
    console.log($('#container-altezza-fisso').height()); 
}); 

它打印1418.它沒有任何填充/邊距。爲什麼?我該如何解決它?

+0

還有哪些其他樣式規則應用於該元素?它是否有任何特定的孩子的尺寸(高度)可以改變內容將被加載後? – raina77ow

回答

8

這是因爲在domready中的一些圖像不完全加載。你應該在窗口加載時調用高度。

$(window).load(function(){ 
    console.log($('#container-altezza-fisso').height()); 
}) 

您還可以使用outerHeight

獲取當前計算的高度在匹配的元素集合,包括填充,邊框和可選保證金的第一要素。返回值的整數(不帶「px」)表示形式,如果在空的元素集上調用,則返回null。

console.log($('#container-altezza-fisso').outerHeight()); 
+0

沒有什麼變化.... – markzzz

+2

這節省了我很多頭痛 - 謝謝! – boz

2

使用outerHeight()以獲得填充高度。 使用outerHeight(true)以獲得填充+邊距的高度。

Here's a link to the documentation.

+0

正如我所說,我沒有填充/保證金!它的作品把代碼放在$(window).load ...:O – markzzz

2

.height()將讓你的元素的高度,.outerHeight()將返回的高度包括填充,邊距和邊框。

相關問題