jQuery加载子项
我有一组项目,当用户从侧菜单中选择选项时,这些项目会动态添加到。他们选择的选项越多,显示的项目就越多 有些物品会有一个“统计”div,有些物品不会。我想做的是检查项目是否有“stats”div,如果没有,则将“more”div的宽度设置为更大,以便占用“stats”块留下的空白空间 以下是生成的项目的HTML:jQuery加载子项,jquery,html,css,Jquery,Html,Css,我有一组项目,当用户从侧菜单中选择选项时,这些项目会动态添加到。他们选择的选项越多,显示的项目就越多 有些物品会有一个“统计”div,有些物品不会。我想做的是检查项目是否有“stats”div,如果没有,则将“more”div的宽度设置为更大,以便占用“stats”块留下的空白空间 以下是生成的项目的HTML: <div class="item" idse="2116082"> <div class="ico"></div&g
<div class="item" idse="2116082">
<div class="ico"></div>
<div class="ID">2237</div>
<div class="Time"><span>00:00</span><span>06 Dec</span></div>
<div class="Event"><span>Test</span><span>Test</span></div>
<div class="stats">Stats</div>
<div class="more">+ 3</div>
<div class="odds">
<div class="odd r1 c1 g1" id="td_448023666">
<div title="Home">Home</div>
<div>1/2</div>
<div class="hnd"></div>
</div>
<div class="odd r1 c2 g1" id="td_448023667">
<div title="Draw">Draw</div>
<div>7/2</div>
<div class="hnd"></div>
</div>
<div class="odd r1 c3 g1" id="td_448023668">
<div title="Away">Away</div>
<div>9/2</div>
<div class="hnd"></div>
</div>
<div class="sepOdds"></div>
<div class="endOdds"></div>
</div>
</div>
你的意思是这样的吗
$('document').load(function () {
$(".item").each(function(){
if (!$(this).children('.stats').length) {
var more = $(this).children('.more');
var more_width = more.width();
more.css('width', more_width + '132px');
}
});
});
$(this).children('.stats')
将始终返回true,因为此函数中的$(this)将引用body标记,而不是特定的'item'div right?否。jquery选择器将始终返回元素数组,因此如果未找到任何元素,它将返回一个在IF
条件下有效的空数组。问题是页面上有多个'item'div,因此“var more=$('.item')。children('.more');”不一定会选择缺少'stats'div的特定'item'div
$('document').load(function () {
$(".item").each(function(){
if (!$(this).children('.stats').length) {
var more = $(this).children('.more');
var more_width = more.width();
more.css('width', more_width + '132px');
}
});
});