Fork me on GitHub

jQuery的remove和detach的区别

1、remove([expr])
 
概述:从DOM中删除所有匹配的元素。
这个方法不会把匹配的元素从jQuery对象中删除,因而可以在将来再使用这些匹配的元素。但除了这个元素本身得以保留之外,其他的比如绑定的事件,附加的数据等都会被移除。
 
2、detach([expr])
 
概述:从DOM中删除所有匹配的元素。
这个方法不会把匹配的元素从jQuery对象中删除,因而可以在将来再使用这些匹配的元素。与remove()不同的是,所有绑定的事件、附加的数据等都会保留。
 
实例:
<div id="google">Google</div>
<div id="apple">Apple</div>

<script>
$(function () {
$("#apple").hover(function () {
$(this).text("Google+");
});
//使用 remove() hover()事件也会被删除
//apple = $("#apple").remove();

//使用detach() hover()事件会保存下来
apple = $("#apple").detach();
$("body").append(apple);

});

 

posted @ 2015-12-13 15:33  CangoWu  阅读(699)  评论(0编辑  收藏  举报