搜索

首页  >  问答  >  正文

javascript - appendchild和removechild如果要操作的节点的父节点都是body,是不是就不用提前获取body父节点了。又或者

appendchild和removechild如果要操作的节点的父节点都是body,是不是就不用提前获取body父节点了。又或者父节点不是body就需要提前获取父节点在使用?

为情所困为情所困2762 天前1029

全部回复(5)我来回复

  • 高洛峰

    高洛峰2017-06-14 10:53:27

    类似这样

    var _body = document.body;
    _body.appendChild(document.createElement('h1'));
    _body.removechild(docuemnt.getElementsByTagName('h1')[0]);
    

    不存在这样的用法

    appendChild(***).removeChild(***)  //肯定报错
    

    至于,你说的,不需要获取操作body父节点,代码都不知道在哪操作,肯定会报错。

    回复
    0
  • 天蓬老师

    天蓬老师2017-06-14 10:53:27

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

    语法

    let oldChild = node.removeChild(child);
    //OR
    
    element.removeChild(child);

    child 是要移除的那个子节点.
    node 是child的父节点.
    oldChild保存对删除的子节点的引用. oldChild === child.

    建议你阅读:https://developer.mozilla.org...


    Node.appendChild() 方法将一个节点添加到指定父节点的子节点列表末尾。

    var child = node.appendChild(child);

    node 是要插入子节点的父节点.
    child 即是参数又是这个方法的返回值.
    示例:

    // 创建一个新的段落p元素,然后添加到body的最尾部
    var p = document.createElement("p");
    document.body.appendChild(p);

    建议你阅读:https://developer.mozilla.org...

    回复
    0
  • 三叔

    三叔2017-06-14 10:53:27

    肯定要先获取父元素才能使用appendChild()啊,不然怎么确定是加在那个元素后面。。。。。。

    回复
    0
  • 过去多啦不再A梦

    过去多啦不再A梦2017-06-14 10:53:27

    <body>标签不是还有<head><html>的父节点和兄弟节点的嘛,所以最好获取一下父节点的好

    回复
    0
  • 怪我咯

    怪我咯2017-06-14 10:53:27

    父节点要提前获取的。案例是直接用document.body。获取的父节点body。这是DOM0级制定的规范。如果父节点不是body。就的单独获取。因为其他父节点和body不一样。

    回复
    0
  • 取消回复