Как да получите изобразената височина на даден елемент?

Как да получите височината на даден елемент?

Да речем, че имате елемент <div> с някакво съдържание вътре. Това вътрешно съдържание ще разтегли височината на елемента <div>. Как да получите "визуализираната" височина, когато не сте задали изрично височината. Очевидно опитах:

var h = document.getElementById('someDiv').style.height;

Има ли някакъв трик за това? Използвам jQuery, ако това помага.

Опитайте с един от следните продукти:

var h = document.getElementById('someDiv').clientHeight;
var h = document.getElementById('someDiv').offsetHeight;
var h = document.getElementById('someDiv').scrollHeight;

clientHeight включва височината и вертикалната подложка.

offsetHeight включва височината, вертикалната подложка и вертикалните граници.

scrollHeight включва височината на съдържащия се документ (ще бъде по-голяма от височината в случай на превъртане), вертикалната подложка и вертикалните граници.

Коментари (6)
Решение

Трябва да е просто

$('#someDiv').height();

с jQuery. Това извлича височината на първия елемент в опакования набор като число.

Опитвам се да използвам

.style.height

работи само ако първо сте задали това свойство. Не е много полезно!

Коментари (8)

Зададохте ли специално височината в css? Ако не сте, трябва да използвате offsetHeight;, а не height.

var h = document.getElementById('someDiv').style.offsetHeight;
Коментари (1)