jquery中detach()和remove()区别详解

434次阅读
没有评论

jquery中detach()和remove()区别详解

jquery删除元素的三种方法中,detach()方法和和remove()方法很相似,都可以用于从DOM中去掉所有匹配的元素。但是二者使用上区别,区别在于detach()方法会把所有绑定的事件、附加的数据等都会保留下来。本文向大家详解jquery中detach()和remove()区别。

1、定义区别

remove()方法 : 把被选中元素删除(包括事件);

detach()方法: 把被选中元素删除,当把元素在添加到body中时,原先的事件还会保留。

2、使用区别

remove()方法:删除元素之后除了元素自身保留下来外,其他的比如绑定的事件,附加的数据等都会被删除。

detach()方法:删除元素可以在将来再使用,且所有绑定的事件、附加的数据等都会保留下来。

3、区别实例

<body id='body'>
    <div id="one">one</div>  
     <div id="two">two</div>
  </body>
   $(document).ready(function(){
           $('#one').click(function(){
                       $(this).text('one-two');
          })
         //使用remove(),hover事件也会被删除
           one=$('#one').remove();
         //使用detach(),hover()事件会被保存 
          one=$('#one').detach();
         $('#body').append(one);
         })

其实detach()和remove()区别主要在于是否将已删除元素所绑定的数据删除。当你删除之后,想要在后来的某个时候重新加入时,detach()方法将会很有用哦~更多JavaScript学习推荐:JavaScript教程。

神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试

相关文章:

版权声明:JavaScript2022-12-16发表,共计895字。
新手QQ群:570568346,欢迎进群讨论 Python51学习