Javascript 如何使用jquery删除一个元素及其后的下一个元素?
我正在尝试删除一个元素以及紧随其后的元素。知道这为什么不起作用吗Javascript 如何使用jquery删除一个元素及其后的下一个元素?,javascript,jquery,html,Javascript,Jquery,Html,我正在尝试删除一个元素以及紧随其后的元素。知道这为什么不起作用吗 $('ul').find('li').first().remove().next().remove(); $('ul').find('li').first().remove().next().remove() 一个 两个 三 您可以尝试选择前两个,然后删除它们: $('ul').find('li').slice(0, 2).remove(); 它不起作用,因为第一个已删除,所以next()将不起作用 尝试: 您正在尝试选
$('ul').find('li').first().remove().next().remove();
$('ul').find('li').first().remove().next().remove()代码>
- 一个
- 两个
- 三
您可以尝试选择前两个,然后删除它们:
$('ul').find('li').slice(0, 2).remove();
它不起作用,因为第一个已删除,所以next()
将不起作用
尝试:
您正在尝试选择已删除元素的下一个元素。在选择器中,选择索引小于写入索引的元素
$('ul').find('li:lt(2)').remove();
$('ulli:lt(2)')。删除()代码>
- 一个
- 两个
- 三
在您的特定情况下,这是一条路要走
如果希望删除下一个元素,即使它与初始选择器不匹配,也可以使用add
和next
:
var toRemove = $("selector for the matching thing");
toRemove.add(toRemove.next()).remove();
setTimeout(函数(){
var toRemove=$('.m');
添加(toRemove.next()).remove();
}, 1500);代码>
我不匹配,所以我会留下来
我要比赛,所以我要去
我是比赛后的下一个元素,所以我要去
我没有关系,所以我会留下来
第一个元素被删除,因此next()函数将获得一个空集合,而不会发生任何事情
正确的方法:
var$deleteMe1=$('ul').find('li').first();
var$deleteMe2=$deleteMe1.next();
$($deleteMe1).add($deleteMe2.remove()代码>
- 一个
- 两个
- 三
您必须先删除,然后再删除
因此,请使用:
$('ul li:eq(0), ul li:eq(1)').remove();
你可以用
对于lis来说,这没有多大意义,因为这只是一种过于复杂的说法,即使用前两个lis。但如果我们谈论任意节点,在我看来,这将是选择“这个节点+下一个节点”并移除它们的最简单方法
$('ul li:eq(0), ul li:eq(1)').remove();
$('ul').find('li').first().next().addBack().remove()