我正在寻找一种方法来删除两个相同的div之一,如果它们是并排的:
示例:
<div id="foo">
<ul>
<li><a class="foo2" href="/">Home</a></li>
<div class="foo3"></div><div class="foo3"></div>
<li><a class="foo2" href="link.html"><strong>Link text</strong></a></li>
</ul>
</div>
在上面的示例中,存在两个.foo3链接,而只需要一个。
基本上类似于:
$("#foo ul li:contains('div.foo3 div.foo3')").first().remove();
答案 0 :(得分:3)
答案 1 :(得分:1)
这个怎么样?
$('#foo ul li').each(function() {
if ($(this).find('div.foo3').length > 1)
$(this).find('div.foo3:not(:first)').remove();
});
此外,您的.foo3
不在li
中,而是在ul
。
<强> WORKING DEMO 强>
答案 2 :(得分:0)
试试这个:
var i = 0;
$(".foo2").each(function() {
if (i >= 1){
$(this).remove();
}
i++;
});
答案 3 :(得分:0)
我认为您正在搜索类似.each()
(docs)或.filter()
的内容,如果您知道如何选择除第一个元素以外的所有元素。 (docs)。
$('#foo ul li div.foo3').each( function( i, elem ) {
if( i != 0 ) {
$(elem).remove();
}
} );
答案 4 :(得分:0)