移除DOM节点

自作多情 提交于 2020-04-03 04:34:15

在IE中移除容器类节点,会引起内存泄露,最好是创建一个新的节点,比如div,然后将要删除的节点放入这个div中,再将div的innerHTML清空。其它的直接removeChild就可以了。

 var removeNode = !+"\v1" ? function(){
    var d;
    return function(node){
        if(node && node.tagName != 'BODY'){
            d = d || document.createElement('DIV');
            d.appendChild(node);
            d.innerHTML = '';
        }
    }
}() : function(node){
    if(node && node.parentNode && node.tagName !=  'BODY'){
        node.parentNode.removeChild(node);
    }
}

移除节点:

xxx.removeChild(obj) xxx是所删除节点的父节点

xxx.removeNode(true) xxx是所要删除的节点

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!