找到div的高度并更改当前div高度以匹配

时间:2010-10-07 09:14:26

标签: javascript jquery

我正在尝试使div与父级相同(如果父级更大)或使父级与当前div的高度相同(如果当前div更大)

这是我到目前为止所拥有的

$(this).parents().find('.address').slideToggle(function() {
    $(this).parent().height($(this).parent().find('.address').height())
})

它使父级成为当前div的高度(但在我目前的情况下,父级大于当前div

有什么想法吗?

由于

杰米

2 个答案:

答案 0 :(得分:1)

检查解决方案 here

示例Html:

<div id="parent" style="height:500px;border:1px solid #000000">
    <div id="child" style="height:300px;border:1px solid #000000">child</div>
</div>

<强>使用Javascript:

 jQuery(document).ready(function() {
                 var $parentDiv = $('#parent');
                 var $childDiv = $('#child');       
                 if($childDiv.height() > $parentDiv.height())  
                    $childDiv.css('height', $parentDiv.height());               
                 else
                     $parentDiv.css('height', $childDiv.height()); 

        });

答案 1 :(得分:0)

你的脚本不是真的可读(并没有真正表现) 但你可以只读取两个元素的高度,然后将高度设置为较短的

var child = $(...),
    parent = child.closest(...),

    h = Math.max(child.height(), parent.height()),
    e = (child.height() > parent.height())? parent : child;
    e.css('height', h + 'px');