DOM節點(二):操作節點
阿新 • • 發佈:2018-04-05
strong node remove last rfi pan AR eno urn
appendChild()
用於向childNodes列表的末尾添加一個節點。
var returnedNode = someNode.appendChild(newNode);
如果傳入的節點已經是文檔的一部分了,那結果就是將該節點從原來的位置轉移到新位置
insertBefore()
這個方法接受兩個參數:要插入到節點和作為參照的節點。插入節點後,被插入的節點會變成參照節點的前一個同胞節點(previousSibing)
//插入到最後一個子節點的前面 returnedNode = someNode.insertBefore(newNode, someNode.lastChild);
replaceChild()
這個方法接受兩個參數:要插入的節點和要替換的節點。要替換的節點將由這個方法返回並從文檔樹中被移除,同時要插入的節點占據其位置。
var returnedNode = someNode.replaceChild(newNode, someNode.firstChild);
removeChild()
這個方法接受一個參數,即要移除的節點。被移除的節點將成為方法的返回值
var formerFirstChild = someNode.removeChild(someNode.firstChild);
cloneNode()
用於創建調用這個方法的節點完全相同的副本。cloneNode()方法接受一個布爾值參數,表示是否執行深復制。在參數為true的情況下,執行深復制,
也就是復制節點及其整個子節點樹;在參數為false的情況下,執行淺復制,即只復制節點本身
<ul> <li>item 1</li> <li>item 2</li> <li>item 3</li> </ul>
var deepList = myList.cloneNode(true); console.log(deepList.childNodes.length);//3 var shallowList = myList.cloneNode(false); console.log(shallowList.childNodes.length); //0
DOM節點(二):操作節點