最大高度基于其他元素的高度

时间:2014-06-11 00:00:50

标签: javascript jquery css

我希望能够根据另一个元素的(可变)高度来设置一个元素的最大高度 - 尽管我非常喜欢JS初学者,我只是积极地在那里&# #39;用这种方式做到这一点。这是我希望以max-height为基础的父元素。显然,无论在任何给定页面上任何给定时间元素的高度如何,我都希望此解决方案能够正常工作。

为了清楚起见,我想找到一个高度,让我们说,一个元素与#34; ElementOne",然后设置" ElementTwo&的最大高度#34;比如说,ElementOne的高度加上113px。

我该怎么做?

3 个答案:

答案 0 :(得分:0)

我使用此代码段by Paul Irish来执行此操作:

$.fn.setAllToMaxHeight = function(){
  return this.height( Math.max.apply(this, $.map( this , function(e){ return $(e).height() }) ) );
}

// usage: $(‘div.unevenheights’).setAllToMaxHeight()

答案 1 :(得分:0)

我认为这就是你的意思:

var h = document.getElementById("ElementOne").style.height;

document.getElementById("ElementTwo").style.maxHeight = h + 113 + "px";

答案 2 :(得分:0)

这使用jquery为窗口的resize事件和ELementOne分配一个事件监听器(注意:我认为大多数html触发器都没有自己的resize事件)。这是一个jsfiddle:http://jsfiddle.net/xiondark2008/UPqsV/

我为div添加颜色,以便您可以看到它们。

HTML:

<div class="ElementOne"></div>
<div class="ElementTwo"></div>

javascript:

function setHeight(){
    var elementOne = $(".ElementOne").height();
    $(".ElementTwo").height( elementOne +113);
}

$(window,".ElementOne").resize(setHeight);
setHeight();