JQuery中的分离是否会破坏DOM中的节点?

时间:2014-01-03 14:29:48

标签: jquery dom

JQuery中的detach方法是否实际上破坏了DOM中的节点?例如,如果我这样做:

$("#myDiv").detach().appendTo($("#container"));

是否会破坏原始#myDiv节点,并创建一个要追加#container的新节点?或者它将是同一个节点?

使用destroy,我的意思是当我执行detach时,释放存储在浏览器中的节点的内存位置。或者JQuery会保存节点的引用(而不是副本),防止它被释放,以后可以重新附加吗?

1 个答案:

答案 0 :(得分:2)

$("#myDiv")对象将属性0保留为相关元素,即使在分离它之后也是如此。当你追加时,你真的附加了相同的元素,它不是一个新元素。

您可以通过注意子元素也会再次恢复来检查。请注意,remove函数具有相同的行为,期望它清除链接到元素及其子元素的jQuery数据。您还可以通过发出console.dir($("#myDiv").detach())来查看您的元素。