其他分享
首页 > 其他分享> > 重写removeChild方法

重写removeChild方法

作者:互联网

基础回顾:

Node.removeChild() 方法从DOM中删除一个子节点。

返回被删除的节点。如果节点不存在则返回 null。

let oldChild = node.removeChild(child);

如果想要在removeChild方法里多做一点事情,那么就需要重写removeChild了。

需要知道的两点是:1、它是Node原型上的方法;2、它的返回值。

了解了这两点,重写它就一点也不难啦!

Node.prototype.removeChildNew = Node.prototype.removeChild;

Node.prototype.removeChild = function (n) {
  console.log('待删除的节点', n);
  
  if(!n) {
    return null;
  }

  const isBreak = n.nodeType === 8; // 例如,节点为注释节点时不删除
  if(isBreak ) {
    return null; // 不删除
  }
  
  return this.removeChildNew(a); // 正常删除
}

标签:Node,null,删除,方法,removeChild,prototype,重写,节点
来源: https://www.cnblogs.com/chaoyueqi/p/16262887.html