给定浮动div的选择只有A-G的高度是多少,好像A-G的高度是单个div?
示例位置取决于视口的宽度 划分A到G。
<section>
--> [A][B][ C ][D]
| [ ]
| [ ]
height--| [ E ]
| [ ]
| [ ]
| [ F ]
--> [G]
...
[ Z ]
</section>
所以我猜可能有一个技巧只能找到左边最小的左边位置,然后从每个项目中检索高度。我想只选择A-G高度而不是A-Z高度。即使左侧位置与精确匹配,是否有更准确或标准的方法来执行此操作?
var gatherHeight = 0;
var sectionLeft = $("section").position().left;
$("section > div:nth-child(-n+7)").each(function() {
if ($(this).position().left == sectionLeft)
{
gatherHeight += $(this).height();
}
});
答案 0 :(得分:1)
据我所知,jQuery每个函数的工作方式是你传递一个你想循环的元素数组作为参数,像这样,
<强>的jQuery 强>
var height = 0;
var elements = $('.elements');
$.each(elements,function(key,value) {
height += $(this).height();
});
纯JS
var height = 0;
var elements = document.querySelectorAll('.elements');
for(var i = 0;i < elements.length;i++) {
height += elements[i].offsetHeight();
}
<强>更新强>
<强> HTML 强>
<section>
<div class="parent in-viewport">
<div class="child">
</div>
<div class="child">
</div>
<div class="child">
</div>
</div>
<div class="parent out-viewport">
<div class="child">
</div>
<div class="child">
</div>
<div class="child">
</div>
</div>
</section>
<强>的jQuery 强>
var height = 0;
var parents = $('.in-viewport');
$.each(parents,function(key,value) {
height += $(this).height();
});