从jQuery的remove()和原生JS的removeChild()方法再观jQuery对象和DOM对象的关系

jQuery对象是通过jQuery包装DOM对象后产生的对象。

jQuery的remove()方法和原生js的removeChild()方法都是从DOM中删除节点,方法的返回值是:

1. remove()方法:返回一个指向已被删除的节点的引用,这个节点元素还可以使用;

2. removeChild()方法:删除的节点仍然存在于内存,只是没有添加到当前文档的DOM树中。

可以总结为:remove()方法移除的是jQuery对象,这个对象又指向DOM节点;removeChild()方法则是直观得移除DOM节点。

两种方法都是把节点从DOM中临时删除,去往待定区!

jQuery对象和DOM对象是紧密相连,共生共存。


为验证这个结论,编制以下验证代码

结论为:每种情况都能恢复移除的元素。


当然,还有一点就是,jQuery的remove()方法移除后再追加,事件绑定不在了;detach()方法移除后再追加,事件绑定还在。



    
        
        从jQuery的remove()和原生JS的removeChild()方法再观jQuery对象和DOM对象的关系
        
    
    
        
jQuery对象设置CSS样式,把节点从DOM移除,最后再把jQuery对象加入文档
jQuery对象设置CSS样式,移除jQuery对象,最后再把jQuery对象加入文档
用原生JS设置CSS样式,再获取jQuery对象,把节点从DOM移除,最后再把jQuery对象加入文档
用原生JS设置CSS样式,再获取jQuery对象,移除jQuery对象,最后再把jQuery对象加入文档
先获取jQuery对象,再用原生JS设置CSS样式,把节点从DOM移除,最后再把jQuery对象加入文档
先获取jQuery对象,再用原生JS设置CSS样式,移除jQuery对象,最后再把jQuery对象加入文档



你可能感兴趣的:(前端文章,JavaScript文章,jQuery文章)