jQuery div height分别计算

时间:2011-06-28 15:12:25

标签: jquery height

我有这段代码:

var maxHeight = 0;
$('div.height').each(function() { maxHeight = Math.max(maxHeight, $(this).height());      }).height(maxHeight);

此代码甚至可以计算每个框的长度。但我希望每个盒子的长度分别计算。我怎么能这样做?

我的HTML

<div class="height"> 
     <div class="overlay height"></div>
     Content
</div>

<div class="height"> 
     <div class="overlay height"></div>
     Content
</div>

3 个答案:

答案 0 :(得分:1)

$('div.height').each(function() { 
    maxHeight = Math.max(maxHeight, $(this).height());    
    $(this).height(maxHeight);  
})

答案 1 :(得分:1)

我自己已经弄清楚了,这就是解决方案:

$('div.height').each(function() { 
    hParent = $(this).height();
    hChild = $(this).find('div.overlay').height();
    maxHeight = Math.max(hParent, hChild);    
    $(this).height(maxHeight);
    $(this).find('div.overlay').css("height",(maxHeight-72)+"px");  
});

答案 2 :(得分:0)

在当前代码中,您将所有内容设置为maxHeight的CURRENT值,而不是maxHeight的FINAL值。如果我理解你打算做的正确,那么试着把它分开:

var maxHeight = 0;

$('div.height').each(function() { maxHeight = Math.max(maxHeight, $(this).height()); });

$('div.height').height(maxHeight);

这会将最终的maxHeight应用于所有div。