javascript-dom的常用方法
1.獲得元素
獲得元素要等頁面載入完成之後再獲取,在頁面載入的時候獲取的話頁面還沒有載入完成,然後你獲取元素的話,會獲取不到。
方法1.document.getElementById(“元素的id”);通過元素的id來獲取,返回的是你獲取了那個元素物件的引用,這個是document類的方法。
方法2.document.getElementsByTagName(“元素名稱”);獲取一類元素,以陣列的形式返回。(這個是node節點介面的方法,就是所有的元素物件都有這個方法。)
方法3.document.getElementByName(“元素name屬性”);通過元素的name屬性來獲取,也是以陣列的形式返回。
2.獲取元素屬性。
元素屬性的最推薦的方式就是通過物件.屬性的方式來讀取。
3.獲取子元素
1.父元素名稱.childNodes來獲取所有子元素。包含空的文字元素。此方法不實用
2.通過 getElementByTagName(“標籤名”);通過物件呼叫次方法獲取的是他的子孫元素。
3.firstChild 第一個子元素 lastChild最後一個子元素。
4.獲取文字元素。
通過firstChild來獲取。然後通過 nodeValue來讀寫文字的屬性。
5.新建元素文字節點,新增元素文字節點,
新建元素節點 document.createElement(“標籤名”);返回的是建立的那個元素節點的引用。
新建文字節點document.createTextNode(“文字內容”);返回此元素的引用
新增元素節點。父元素.appendChild(節點名);
6.替換子元素元素節點
父元素名.replaceChild("新節點","舊節點");
元素.parentNode。返回父元素節點
元素名.cloneNode(deep);克隆一個節點。deep為true表示連子節點一起克隆,為false不克隆子節點。
7.在子元素的前面插入一個元素 insertBefore(要插入的元素,插入在哪個元素前面)
可以自定義一個 在元素後面插入元素的函式
function insertLast(aNode,bNode){ var bNodeParent=bNode.parentNode; if(bNodeParent!=null){ //判斷bNode是不是最後一個節點,如果是則直接appendChild()新增到最後面 if(bNodeParent.lastChild===bNode){ bNodeParent.appendChild(aNode); }else{ //不是的話,則找到他的下面的一個兄弟元素節點。然後插入到前方。 //nextSibling 找到下一個兄弟元素節點。 nextNode=bNode.nextSibling; bNodeParent.insertBefore(aNode,nextNode); } }
8.刪除元素節點
parent. removeChild(要刪除的子節點);