我有这个代码:
CSS:
.wrapper{width:400px}
.wrapper div{width:200px}
.odd {float:left}
.even {float:right}
HTML:
<div class="wrapper">
<div>Odd</div>
<div>Even</div>
<div>Odd</div>
<div>Even</div>
<div>Odd</div>
<div>Even</div>
</div>
jQuery:
$('.wrapper').each(function() {
var $children = $(this).children(),
$item;
$children.each(function(i) {
$item = $(this).addClass(i % 2 === 0 ? 'odd' : 'even')
});
});
正如您所期望的那样工作。
我的问题是,当一个元素被 jQuery 删除时,如何保留.odd
元素left
和.even
元素?right
.remove()
我已经尝试过了,但它显然不起作用:
$('.wrapper div').click(function(){
$(this).fadeOut(function(){
$(this).siblings().removeClass('odd');
$(this).siblings().removeClass('even');
$('.wrapper').each(function() {
var $children = $(this).children(),
$item;
$children.each(function(i) {
$item = $(this)
.addClass(i % 2 === 0 ? 'odd' : 'even')
});
});
$(this).remove();
});
});
任何建议都非常感谢!