【學習筆記】DOM中的節點操作函數以及屬性

一、節點相關的屬性
parentNode:獲取元素的父節點
childNodes:獲取元素的子節點其中包括文本節點等
firstChild:元素的第一個子節點
lastChild:元素的最後一個子節點
nextSibling:下一個兄弟元素
previousSibling:前一個兄弟元素
以上的一組屬性中除了parentNode外,其他的屬性獲取的節點中都有可能會含有文本節點,如下面的nextSibling,而通常我們在使用的時候大多數是需要對元素節點進行操作,利用上面的方式獲取的節點還需要利用nodeType的值來進行篩選。所以DOM提供了另外的一組屬性見下面。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<div class="parent">
    123
    <div class="child"></div>
</div>
<script>
    var div = document.querySelector(".child");
    console.log(div.previousSibling);
</script>
</body>
</html>

二、只獲取元素節點的屬性
firstElementChild:獲取第一個元素子節點
lastElementChild:獲取最後一個元素子節點
childElementCount:獲取元素子節點的個數
nextElementSibling:獲取下一個兄弟元素節點
previousElementSibling:獲取上一個兄弟元素節點
利用第三個和第四個方法相結合可以獲取所有的元素子節點

三、添加刪除元素的方法
(1)appendChild(node):添加的元素如果不存在則在父元素最後添加元素,如果被添加的元素已經存在,則先將其父元素中的元素刪除,然後再添加到指定的元素中。
(2)insertBefore(node,node1):在node1前面添加元素node,如果第二個參數沒有指定則是在父元素的最後添加元素
(3)replaceChild(newChild,oldChild):利用新的元素替換舊的元素,如果只存在一個參數,則將元素刪除
(4)removeChild(node):移除某個元素
(5)cloneChild(boolean):對元素進行克隆,當參數爲true時則會將該元素的子元素額進行拷貝,爲false時則只拷貝當前元素

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章