在飞行中,没有任何子代被施加到父代。我可以获取scrollheight并将滚动条(自定义)添加到其中。

循环我们可以得到的所有孩子,但是还有其他方法吗?

我想在不需要时将其删除。所以我想知道有多少高度被占用,在有一些空白的地方,我可以移除滚动条。

最主要的是我不知道孩子的身高,每个孩子的身高也各不相同,而且没有孩子的身高也是不可预测的。

如何计算我的孩子们估计的身高多少?

我试过这样的:

var accupiedHeight = $('.blue').innerHeight();
console.log(accupiedHeight);


没有结果。

Live

最佳答案

如果克隆父容器并将高度设置为auto,则可以计算子元素的总高度:

var accupiedHeight = $('.blue').clone().css('height', 'auto').appendTo('body').height();


演示:http://jsfiddle.net/gf1Ljh8u/3/

这样看起来会很简洁。但是,我仍然更喜欢循环版本,因为它更全面。

var accupiedHeight = 0;
$('.blue').children().each(function() {
    accupiedHeight += this.scrollHeight;
});


演示:http://jsfiddle.net/gf1Ljh8u/4/

09-26 21:54