关于DOM(删除)

remove()

$(selector).remove()
返回值为jQuery类型,返回当前jQuery对象本身
移除被选元素,包括所有的文本和子节点,该方法也会移除被选元素的数据和事件
提示:如需移除元素,但保留数据和事件,使用detach()方法代替。
提示:如只需从被选元素移除内容,使用empty()方法。

empty()

$(selector).empty()
返回值为jQuery类型,返回当前jQuery对象本身
从被选元素所有子节点和内容(该方法不会移除元素本身,或它的属性)

detach()

$(selector).detach()
移除被选元素,包括所有的文本和子节点。然后它会保留数据和事件
该方法会保留移除元素的副本,允许它们在以后被重新插入

例子(使用 detach() 方法来移除并恢复一个元素):
var x;
$("#btn1").click(function(){
  x=$("p").detach();
});
$("#btn2").click(function(){
  $("body").prepend(x);
});

总结:remove、detach 移除文档中的被选元素,包括所有的文本和子节点,区别是detach会保留数据和事件,而remove删的一干二净,这就意味着detach删除的节点是有可能恢复的,而remove不能。remove、empty区别是是否移除当前的节点,remove是移除当前的节点,empty反之。

你可能感兴趣的:(关于DOM(删除))