问答详情
源自:4-5 DOM节点删除之detach()和remove()区别

谁能解释下,多次点击button之后第二次刷新出来来的p2元素不再能弹出内容了

如题:不是说detach 不会删除吗?



提问者:qq_慕哥0302432 2019-01-09 16:42

个回答

  • 小季乐乐4412490
    2019-03-06 21:34:47

    重点:detach不会清除事件,remove会清除事件

    当点击remove的时候会清掉第一个p标签,然后在下方添加一个p标签,因为remove会清除掉p标签点击事件,点击p标签的时候是没有点击事件的

    当点击detach的时候也是会清掉第一个p标签,然后在下方添加一个p标签,因为detach不会清掉p标签点击事件,点击p标签的时候是有事件的

    如果你点了两次remove按钮,那么会在下方添加两个不保留事件的p标签,如果再次点击detach的时候会默认找第一个p标签,因为append是顺序插入,也就是remove删除的第第一个,因为已经没有了事件,所以点击后添加的p标签是没有事件的

    多敲几遍,慢慢体会,注意下jQuery事件的特性,它们的不同点

  • 慕先生6393163
    2019-03-01 11:04:00

    两个函数中的选择器都是$("p:first")连续点击第一个按钮会remove p1和p2,点第二个按钮时p2已经不存在了

  • 月夜的恨
    2019-02-19 15:49:05

    点击事件编写的时候是删除上方的p标签,将其添加到下方,当上方的p1是remove产生的也就是没有点击事件的时候,再点击detach产生的p2是没有点击事件的,这时候再使用remove将另一条本来的p2有点击事件消失。两个p标签就都没有点击事件了

  • 慕数据3476865
    2019-01-10 08:29:56

    什么叫多次点了按钮以后  注释不是说的很清楚  你remove了以后就用不了了  但是你用detach一样还是有alert的效果啊