一定数量后去除DIV儿童

我有这个HTML

close
Properties

如何使用jQuery从此HTML中删除第二个第三和第四个Div …

尝试:

$('.control').find("div").slice(1, 4).remove();
$('.control').find("div").slice(1, 4).remove(); 

您正在寻找:nth-child : http : //api.jquery.com/nth-child-selector/

它的工作原理如下:

 $('.control div:nth-child(2), .control div:nth-child(3), .control div:nth-child(4)').remove(); 

请注意:nth-child使用基于一的索引,因此第一个元素的索引为1。

更新:在回答这个问题时,OP发表了评论

如果我不知道在输入字段之后会出现多少div,那么有任何方法可以将所有div或SLIV的第二个子节点之后出现的任何div或SLICE …

答案是肯定的,为此您需要:gt: selector: http : //api.jquery.com/gt-selector/

 $('.control div:gt(1)').remove() 

:nth-child相反, :gt使用从零开始的索引,因此第一个元素的索引为0。

 $('.controll>div:gt(1)').remove(); 

:gt选择器将让你选择哪个索引大于1,那么theese是3.元素和更多

这是一个例子: http : //jsfiddle.net/Am7Vw/1/

如果你的意思是那些特定的:

 $(".ui-resizable-handle, .delete").remove(); 

如果你的意思是位置2-4的div不管标记,那么nth-child()答案之一就可以了。

你可以这样做

 $('.control div:nth-child(2)').remove(); $('.control div:nth-child(3)').remove(); $('.control div:nth-child(4)').remove(); 

或者你也可以这样做

 $('.control div:nth-child(1)').siblings().remove();