大家好,欢迎来到IT知识分享网。
克隆需要看我上篇博客 JQuery21 事件的构成 才能理解 深克隆的方法
深克隆 比浅克隆 能复制事件
浅复制可以使用原生JS CloneNode(true) 就可以了 返回值 做一个集合 return 浅复制结束
那么深复制就比较麻烦 深复制就是需要遍历出 事件属性里的事件对象中的function 循环注册
代码
clone:function(str) { var res=[]; if(str) { //深赋值 this.each(function(key,ele) { //原声的克隆 没有事件 var temp = ele.cloneNode(true); // 增加事件 eventSelector 这个事件 需要看我上一个博客是自定义的属性 //遍历出对象 array里面是function $.each(ele.eventSelector,function(eventName,array) { $.each(array,function(i,v) {// 给克隆的元素的注册事件 真是一环套一环的精彩 $(temp).on(eventName,v); }) // temp[i]=v; }) res.push(temp); }) return $(res); }else { //浅复制 this.each(function(key,ele) { //原声的克隆 没有事件 var temp = ele.cloneNode(true); res.push(temp); }) return $(res); } }
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/118403.html