[发明专利]一种移除页面的DOM节点的方法和装置有效
| 申请号: | 201210579298.7 | 申请日: | 2012-12-28 |
| 公开(公告)号: | CN103902581B | 公开(公告)日: | 2017-12-08 |
| 发明(设计)人: | 陈映平;郭学亨;李晶;吴浩;刘恒兵;龙丁奋 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 北京德琦知识产权代理有限公司11018 | 代理人: | 张玉波,宋志强 |
| 地址: | 518044 广东省深圳*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 页面 dom 节点 方法 装置 | ||
1.一种移除页面的DOM节点的方法,其特征在于,该方法包括:
接收移除页面的DOM节点的命令;
当在页面卸载事件发生之前接收到移除页面的DOM节点的命令时,先将与该DOM节点绑定的事件移除,然后再将该DOM节点移除;
所述将与该DOM节点绑定的事件移除包括:
遍历该DOM节点对应的事件标识ID序列,将该事件ID序列中的所有事件移除;
遍历该DOM节点的各层子节点,遍历每个子节点对应的事件ID序列,将每个子节点对应的事件ID序列中的所有事件移除;
其中,每个绑定了事件的DOM节点对应一个事件标识ID序列,该事件ID序列中存储了对应的DOM节点直接绑定的事件信息。
2.根据权利要求1所述的方法,其特征在于,对于每一个需要移除的事件,通过查询该事件的事件属性表,根据所述事件属性表删除所述事件,并解除事件属性表对所述事件绑定的DOM节点的引用;
其中,所述事件属性表是通过为页面上每个绑定的事件分配一个唯一的ID而建立的,其中存储了每个事件绑定的DOM节点信息、事件类型信息、以及响应所述事件的处理方法信息。
3.根据权利要求1所述的方法,其特征在于,所述将该DOM节点移除包括:
将该DOM节点插入充当节点回收站的临时节点,并将该临时节点的innerHTML属性设置为空,所述innerHTML属性用于描述所述临时节点的内容。
4.根据权利要求1所述的方法,其特征在于,该方法还包括:
解除被移除的DOM节点与事件或其他DOM节点的双向引用关系。
5.一种移除页面的DOM节点的装置,其特征在于,该装置包括接收模块和移除模块;
所述接收模块,用于接收移除页面的DOM节点的命令;
所述移除模块,用于当所述接收模块在页面卸载事件发生之前接收到移除页面的DOM节点的命令时,先将与该DOM节点绑定的事件移除,然后再将该DOM节点移除;
所述移除模块包括第一移除模块和第二移除模块;
所述第一移除模块,用于遍历该DOM节点对应的事件标识ID序列,将该事件ID序列中的所有事件移除;
所述第二移除模块,用于遍历该DOM节点的各层子节点,遍历每个子节点对应的事件ID序列,将每个子节点对应的事件ID序列中的所有事件移除;
其中,每个绑定了事件的DOM节点对应一个事件标识ID序列,该事件ID序列中存储了对应的DOM节点直接绑定的事件信息。
6.根据权利要求5所述的装置,其特征在于,
所述移除模块,用于对于每一个需要移除的事件,通过查询该事件的事件属性表,根据所述事件属性表删除所述事件,并解除所述事件属性表对需要移除的DOM节点的引用;
其中,所述事件属性表是通过为页面上每个绑定的事件分配一个唯一的ID而建立的,其中存储了每个事件绑定的DOM节点信息、事件类型信息、以及响应所述事件的处理方法信息。
7.根据权利要求5所述的装置,其特征在于,
所述移除模块,用于将移除的DOM节点插入充当节点回收站的临时节点,并将该临时节点的innerHTML属性设置为空,所述innerHTML属性用于描述所述临时节点的内容。
8.根据权利要求5所述的装置,其特征在于,该装置还包括双向引用关系解除模块;
所述双向引用关系解除模块,用于解除被移除的DOM节点与事件或其他DOM节点的双向引用关系。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210579298.7/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种带有多排LED灯板的路灯
- 下一篇:摇头式LED投光灯





