我一直在这里搜索一段时间,但找不到任何关于此事的内容。我拥有的是父div中的一组div。当用户单击比较复选框时,我想将包含数据缩略图的HTML附加到第一个空div。因此,如果用户点击三个要比较的东西,第一个将进入div1,第二个进入div2,依此类推。我希望在JQuery中做到这一点。
以下是我所拥有的:
<div id="my_cars_compare" class="my_cars_expanded" style="height: 45px;">
<span class="my_cars_heading">
X cars added to My Cars <span class="expand_it">Expand</span>
</span>
<div id="my_cars_1" class="my_cars_empty first"></div>
<div id="my_cars_2" class="my_cars_empty"></div>
<div id="my_cars_3" class="my_cars_empty"></div>
<div id="my_cars_4" class="my_cars_empty"></div>
<div id="my_cars_5" class="my_cars_empty"></div>
<div id="my_cars_6" class="my_cars_empty"></div>
<input type="submit" value="Compare" class="btn_compare" />
<br clear="all" />
</div>
JQuery的:
$(document).ready(function()
{
$('.compare_click').click(function() {
var dataThumbnail = $(this).parent('td').find('img.clicked').attr('data-thumbnail');
var my_cars_count = $('.my_cars_expanded').children('div').length;
for ( my_cars_count >= 6 ) {
$('.my_cars_expanded').find('div:empty').append('<div class="my_cars_details" style="position: relative;"><div class="my_cars_delete"><img src="btn_mycars_close_overlay.png" /></div><div class="my_cars_photo"><img src="'+dataThumbnail+'" width="67px" /></div></div>');
};
});
});
答案 0 :(得分:10)
您可以使用:first
选择器,div:empty
选择所有空div标签:
$('.my_cars_expanded').find('div:empty:first').append('...');
for
循环的语法与if
语句类似,我认为您要使用if
语句。
var my_cars_count = $('.my_cars_expanded').find('div:empty').length;
if ( my_cars_count > 0 ) {
$('.my_cars_expanded').find('div:empty:first').append('...');
};