我试图在父div“myDiv”中获得子div的总高度。这是结构:
<div style="height: 102px; display: block;" id="myDiv">
<div style="position: relative;" id="sf_0" class="reqCont ui-draggable" ondragstart="drag(event)">
<div class="reqMsgCont">
<div class="reqMsg"></div>
</div>
<div class="btnCont">
<div class="expFold" id="i_0"></div>
</div>
<div id="e_0" class="exCont">
<div id="d_0" class="exDel"></div>
<div id="m_0" class="exMN"></div>
</div>
</div>
<div id="p_0" class="expSngs"></div>
</div>
我正在使用:
var totalHeight =0;
$("#myDiv").children().each(function(){
//totalHeight += $(this).outerHeight(true);
alert(this.id);
});
总计很有趣,所以我设置一个警告来显示ID,显示的唯一ID是sf_0和p_0。为什么缺少其余的?
我虽然可能是因为我正在动态创建div,但是我同时创建它们,然后:
$("#myDiv").append(rO);
然后在此之后运行上面的每个循环。
答案 0 :(得分:2)
children()
只会为您提供直接的子节点,如果您想对它们进行全部检查,建议您使用find()
方法
答案 1 :(得分:1)
儿童只会给你1级深度的div /
而是将其更改为:
var totalHeight =0;
$("#myDiv").find("div").each(function(){
//totalHeight += $(this).outerHeight(true);
alert(this.id);
});