2012-06-27 12 views
5

Come ottengo l'altezza di DIV, impostata da jQuery?
$('.bar2').animate({'height':'58' + "%"},1500);jQuery height of element.style

Quando ho ispezionare elementi in cromo vedo che la mia altezza DIV è impostato su 58%

<div class="bar2" style="height: 58%; background-image: ......>

Ho provato questo:

var bar2 = $(".bar2").height(), o var bar2 = $(".bar2").css('height'),

ma Ricevo sempre la mia "altezza minima" che è 70 px, non l'altezza impostata da jQuery

risposta

2

HTML:

<div style="width: 200px; height: 200px; background-color: blue;"> 
    <div class="bar2" style="min-height: 70px; width: 100px; background-color: red;">foo</div> 
</div> 

JS:

jQuery('.bar2').animate({'height':'58' + "%"}, 1500, function() { 
    alert($(".bar2").css('height')) 
}); 

esempio vivo qui - http://jsfiddle.net/ANbrq/1/

Si può ottenere solo una diversa altezza, quando in realtà è cambiato. Se stai cercando di farlo bene dopo averlo chiesto di ridimensionarlo, otterrai l'altezza iniziale.

+0

questo ha funzionato per me, grazie –

3

penso che si usa:

$(".bar2").outerHeight(); 

Quale è l'altezza calcolata o

$(".bar2").innerHeight(); 

Se non avete bisogno di prendere margine di conto e imbottitura e cosa-no.

+1

'$ .outerHeight()' includerà i bordi dell'elemento e il riempimento nel valore restituito. La tua risposta [non funziona] (http://jsfiddle.net/jamwaffles/BTcfe/), sfortunatamente. – Bojangles

+0

Nel tuo esempio l'altezza sarà di 50 pixel in quanto non ha nulla da spendere al 58%, quindi l'altezza minima avrà effetto. –

+1

Riprendo il mio commento; [questo] (http://jsfiddle.net/jamwaffles/BTcfe/1/) funziona, avendo impostato l'altezza su "". – Bojangles