Ako získate vykreslenú výšku prvku?

Ako získate vykreslenú výšku prvku?

Povedzme, že máte prvok <div> s nejakým obsahom vo vnútri. Tento obsah vnútri roztiahne výšku prvku <div>. Ako získate "vykreslenú" výšku, keď ste explicitne nenastavili výšku. Samozrejme, že som to skúšal:

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

Existuje na to nejaký trik? Používam jQuery, ak to pomôže.

Vyskúšajte jednu z týchto možností:

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

clientHeight zahŕňa výšku a vertikálne vypchávky.

offsetHeight zahŕňa výšku, vertikálne vypchávky a vertikálne okraje.

scrollHeight zahŕňa výšku obsiahnutého dokumentu (v prípade posúvania by bola väčšia ako len výška), vertikálne vypchávky a vertikálne okraje.

Komentáre (6)
Riešenie

Malo by to byť len

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

s jQuery. Tým sa získa výška prvej položky v zabalenej množine ako číslo.

Pokus o použitie

.style.height

funguje len vtedy, ak ste túto vlastnosť nastavili na prvom mieste. Nie je to veľmi užitočné!

Komentáre (8)

Nastavili ste výšku konkrétne v css? Ak nie, musíte použiť offsetHeight; namiesto height

var h = document.getElementById('someDiv').style.offsetHeight;
Komentáre (1)