移除节点通用函数
来源:互联网 发布:网易企业邮箱端口号 编辑:程序博客网 时间:2024/05/29 18:01
使用innnerHTML来移除相关内容确实很方便,但如果元素内设置了事件监听器,当元素被移除时,IE并不会解除元素与事件之间的关联,这样很容易导致内存泄漏(资源无法利用,也无法回收),因为事件引用的内容已经不存在了
因此,要设计一个移除元素同时移除监听事件的函数
思路:
1、设计一个判断该属性是否为函数的函数
2、通过遍历移除节点
3、获取节点自身带有的属性,结合1,若是函数则将其置为null
function isFun(f){ return Object.prototype.toString.call(f)==="[object Function]";}function removeDom(node){ var i,len,attr; while(node.firstChild){ removeDom(node.firstChild); } len=node.attributes?node.attributes.length:0; for(i=0;i<len;i++){ attr=node[node.attributes[i].name]; if(isFun(attr)){ attr=null; } } node.parentNode.removeChild(node);}
0 0
- 移除节点通用函数
- mongodb 移除节点
- 移除DOM节点
- 移除节点
- C# Xml 移除指定节点
- Hadoop/HBase集群移除节点
- js中移除空白节点
- Redis集群进阶-移除节点
- redis 动态添加移除节点
- hadoop扩容和移除节点
- dom03节点的插入移除克隆
- 通用函数: 加载多个函数, 紧邻目标元素节点后,下一个元素节点
- 移除节点时候IE与FireFox的不同
- hadoop日常维护,备份、恢复、增加移除节点
- 节点的操作 创建、添加、移除、移动、复制
- ConcurrentModificationException异常在Iterator移除节点上
- Hadoop2.7.0学习——移除节点
- ceph中osd节点的添加与移除
- 【OpenCV】9th-关于argc
- Ubuntu16.04版本搭建Tensorflow环境并启用GPU支持
- 周笔记(7/52) - DX11 - Tessellation/Hardware Instance
- Spring 下载与安装以及spring 3.2.9 jar包详解
- LocationManager定位服务
- 移除节点通用函数
- 关于对js逻辑与逻辑或的理解
- 面向对象式手写数据库框架
- Support Annotation Library 使用详解
- JSR303使用说明文档
- Qt布局详解
- C++之set和multiset容器初学
- 观察者模式
- WPScan初体验