jQuery - 手表元素高度变化

问题描述:

我有一个元素,它是绝对定位的,并有一个固定的高度。jQuery - 手表元素高度变化

该元素有很多子元素,这些元素可能会改变它们的内容,从而导致它们的高度。 问题是容器元素不会自动展开以适合其子元素(因为它的高度和绝对位置是固定的)。

我怎样才能调整主容器的大小来匹配它的孩子的身高?

可选,如果你确实想/需要做它的jQuery像下面将工作:

HTML:

<div id='container'> 
<div class='child'>Content</div> 
<div class='child'>Content</div> 
<div class='child'>Content</div> 
<div class='child'>Content</div> 
</div> 

CSS:

.child{ 
    height: 40px; 
    background-color: red; 
} 
#container{ 
    height: 120px; 
    background-color: gray; 
    padding: 5px; 
} 

javascript:

var childHeight = 0 
$('.child').each(function() { 
    childHeight = childHeight + $(this).height(); 
}) 
$('#container').height(childHeight); 

工作例如:

http://jsfiddle.net/EcZZL/1/

+0

这没有任何意义?你在这里使用jQuery!这不是纯粹的javascript – 2011-01-21 06:02:47

+0

你的评论没有任何意义,他问如何在jQuery中做到这一点。 – HurnsMobile 2011-01-26 16:47:27

+0

它不回答问题。问题是如何观察高度变化,而不是如何计算高度一次。 – edgi 2011-02-22 17:37:36

假设你可以改变CSS,这可以做相当简单的CSS。而不是设置height只需设置min-height,您的元素应该如此展开。

min-height

+0

不工作的IE浏览器..任何建议,如何激活它在IE-7,将是巨大的使用 – Varun 2011-05-23 07:06:00