首頁  >  問答  >  主體

javascript - dom用removechild刪除時要先取得父元素,而insertbefore時就不用過去父元素。而可以直接使用

## 雷雷

## 雷雷

学习ing学习ing2658 天前807

全部回覆(2)我來回復

  • 过去多啦不再A梦

    过去多啦不再A梦2017-06-14 10:55:43

    DOM API 就是這麼設計的。

    body 就是 h1 的父元素。

    雖然 h1 是一個 Element,但這個方法都是繼承了 Node

    Node.insertBefore()

    文法

    var insertedElement = parentElement.insertBefore(newElement, referenceElement);
            |                   |                       |               |
        被插入的节点             |                  被插入的节点          |
                           新插入节点的父节点                             |
                                                              插入newElement之前的那个节点               
    

    參數和回傳值

    • insertedElement 是被插入的節點,即 newElement

    • parentElement 是新插入節點的父節點

    • newElement 是被插入的節點

    • referenceElement 在插入 newElement 之前的那個節點


    再看看 Node.removeChild

    文法

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

    參數

    • child 是要移除的那個子節點.

    • node 是 child 的父節點.

    • oldChild 保存對刪除的子節點的引用. oldChild === child.

    回覆
    0
  • 迷茫

    迷茫2017-06-14 10:55:43

    body也是一個元素。

    回覆
    0
  • 取消回覆