remove中参数的问题

来源:4-3 DOM节点删除之empty和remove区别

春天的雪

2018-07-15 13:47

$(".right > div").filter(":eq(1)").remove()能删除test2

$(".right > div").remove(":eq(1)")却把两个div都删除了,为啥啊。

写回答 关注

6回答

  • 慕无忌1343731
    2019-07-11 09:44:48

    jquery版本问题,换一个最新的就好了

  • qq_慕用5511547
    2019-01-21 17:15:49

    $(".right > div").remove(":eq(1)")为什么要这么写?

    $(".right > div:eq(0)").remove()

    这样写不行?非得搞个不一样的,那样写本身就有问题。JQ本来就是封装好的JS  你不觉得你那种写法很不符合逻辑?

  • 耿直的杨耿直
    2018-09-20 16:58:26

    是慕课的问题,js代码好像是会执行两遍,你可以敲个alert试试,它会弹两次,所以第一次click中删了第一个后,第二个div的index变为0,也被删除了

    把代码拿出去测了一下,$(".right > div").remove(":eq(0)")只会删除第一个div

    金刚无敌葫芦... 回复未定义丶

    不是网站的问题,两个都会删除,remove执行了两次,不只是eq(0),用 nth-child(1)的话也是一样的效果,无论是2个还是100个都会全删除,因为删了第一个后,原本的第二个变成了第一个,它会一直删到没有第一个,也就是空

    2020-03-28 21:33:57

    共 3 条回复 >

  • 慕慕9098104
    2018-07-24 10:13:33

    确实有这个问题,猜测前面$(".right > div")选中了两个div,一次click中删了第一个eq(0),第二个自动成为eq(0),也被删除了?不太合理啊,望回答

    春天的雪

    感觉就是remove里面的筛选器没起作用,所以把两个都删除了

    2018-07-25 10:26:23

    共 1 条回复 >

  • 春天的雪
    2018-07-16 20:35:27

    额我搞错了,是$(".right > div").remove(":eq(0)")会删除2个div不知道是为啥

    weixin... 回复weixin...

    代码错了$(".right > div:eq(0)").remove();

    2020-09-22 16:16:15

    共 2 条回复 >

  • Nat纳特
    2018-07-16 15:12:51

    你确定$(".right > div").remove(":eq(1)")能把两个div都删除了????

    不是应该这样写吗?$(".right > div:eq(1)").remove()

jQuery基础(二)—DOM篇

jQuery第二阶段开启DOM修炼,了解创建、插入、删除与替换

114012 学习 · 590 问题

查看课程

相似问题