📅  最后修改于: 2023-12-03 15:36:57.162000             🧑  作者: Mango
在 jQuery 中,可以使用 remove()
方法来删除一个元素及其所有子元素。但是,有时候我们只想删除一个元素中的一些附加元素,而保留其他元素不变。下面是一些方法帮助我们实现这个目标。
要删除指定的子元素,我们可以使用 children()
方法来选择要删除的元素,然后再使用 remove()
方法来删除它们。例如,下面的代码可以删除一个 div 元素中所有的 p 元素:
$('div').children('p').remove();
有时候我们想删除除了一个指定元素以外的所有子元素。这时,我们可以使用 not()
方法来选择要保留的元素,然后再使用 remove()
方法来删除其余的元素。例如,下面的代码可以删除一个 div 元素中除了一个具有特定 id 的子元素以外的所有子元素:
$('div').children().not('#special').remove();
有时候我们想只保留一个子元素。这时,我们可以使用 slice()
方法来选择要保留的子元素,然后再使用 remove()
方法来删除其余的元素。例如,下面的代码可以删除一个 div 元素中除了第一个子元素以外的所有子元素:
$('div').children().slice(1).remove();
与上一个示例类似,如果我们想保留最后一个子元素,可以使用 slice()
方法加上 -1
的参数选取最后一个元素进行保留。例如,下面的代码可以删除一个 div 元素中除了最后一个子元素以外的所有子元素:
$('div').children().slice(0, -1).remove();
如果我们想要保留第一个和最后一个子元素,并删除其他的子元素,我们可以将前两个方法组合使用:
$('div').children().not(':first').not(':last').remove();
通过上述多种方法,我们可以删除元素中的附加元素,并根据需要保留其他元素。