jQuery元素的高度

问题描述:

如何获得DIV的高度,这是由jQuery设置的?
$('.bar2').animate({'height':'58' + "%"},1500);jQuery元素的高度

当我在Chrome检查元素我看到我的DIV的高度设定为58%

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

我已经试过这样:

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

但我总是得到我的“最小高度”是70px,而不是由jQuery设置的高度

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')) 
}); 

住在这里的例子 - http://jsfiddle.net/ANbrq/1/

你只能得到一个不同的高度时,它的实际变化。如果您在要求重新调整大小后尝试正确地获取它,则会获得初始高度。

+0

这对我有用,谢谢 –

我想你会用:

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

这是计算的高度或

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

如果你不需要考虑margin和padding和什么,而不是。

+1

'$ .outerHeight()'将在返回的值中包含元素的边框和填充。不幸的是,你的回答[不起作用](http://jsfiddle.net/jamwaffles/BTcfe/)。 – Bojangles

+0

在您的示例中,高度将为50像素,因为它没有任何折扣可达58%,因此最小高度会起作用。 –

+1

我把我的评论带回去; [这一个](http://jsfiddle.net/jamwaffles/BTcfe/1/)的作品,在'

'上设置了一个高度。 – Bojangles