关于清空节点删除节点和clone方法
关于清空节点内容,在jquary里的实现有:
1、html("")为空
$("div").html();//仅仅清空元素的内容,会保留事件
像这种就是清空内容,但是若是有事件的话还会保留,缺点在于会占用内存,虽然有时候占有内存不多但是总归是占有一定的空间。
2、empty()
$("div").empty();//仅仅清空元素的内容,也会清空事件,释放内存
而empty方法就是清空所有内容,包括清空事件,当然也就释放了内存,解决了内存泄漏的问题。
以上两个方法可以根据不同场景来应用。
接下来就是删除节点remove方法了:
$("div").remove()//删除自己
这个remove方法和empty方法的区别就是:前者是连自己都清除删除掉了,而后者是删除自己的“子孙后代”,就饿是内容及事件等。
说完删除接下来就是来说说clone方法,也就是克隆方法。
$(".p").clone().appendTo("div");//clone()里是参数的,不穿参数是深度复制
拿昨天博客的例子来说就是这段代码复制了一个p到div里面了,看效果图:
有时候可能会有这样的需求呢,那关于clone的方法是有参数的,关于两个参数的区别是什么呢,来看代码:
//$(".p").clone(false).appendTo("div");//传参数false和不穿参数是一样的都是深度复制,但是不会复制事件 //$(".p").clone(true).appendTo("div")://都是深度复制,但是会复制事件
所以说一般情况不穿参数就是相当于直接传了false,了解了区别我想在项目中就可以根据具体情况来具体应用了!
好了,今天就到这里了~