我有8个不同高度的标签。每个都有一个类似的类,而活动选项卡有自己的类。
如何获取活动标签的高度并将其作为样式添加到其父级? (当其他选项卡变为活动状态时,需要添加新的高度。)
下面的代码是我想要获得的一个例子。感谢。
<div id="parent" style="height: 1426px;">
<div class="child"></div> ( height: 2245px )
<div class="child"></div> ( height: 983px )
<div class="child"></div> ( height: 3004px )
<div class="child active"></div> ( height: 1426px )
<div class="child"></div> ( height: 1209px )
</div>
答案 0 :(得分:2)
var childHeight = $(".active", "#parent").height();
$("#parent").height(childHeight)
或单行
$("#parent").height( $(".active", "#parent").height() );
答案 1 :(得分:2)
你可以这样做:
$('#parent').height($('.active').height());
但是,由于孩子在父母之下,你应该这样做:
$('#parent').height($('.active').outerHeight());
如果要在选择新选项卡时设置高度,则必须将该行放在设置“活动”类的同一位置。它可能看起来像这样:
$('#parent').find('.child').click(function() {
var $this = $(this);
$this.addClass('active').siblings().removeClass('active');
$('#parent').height($this.outerHeight());
});
答案 2 :(得分:0)
这样:
var child_selected_height = $('div.child.active').css('height');
$('#parent').css('height', child_selected_height);
或更简单:
$('#parent').css('height', $('div.child.active').css('height'));