DOM的基本操作

2022-09-04 06:03:12 字數 2887 閱讀 1308

1.dom屬性的基本操作(增/刪/改/查)

改變元素的內容(innerhtml),屬性(value),樣式(width,height,background)

也就是對dom進行增刪改查

dom的屬性操作,增刪改查

什麼是元素的屬性?class就是元素的屬性,寫在元素內的所有東西都是元素的屬性,比如link的href,img的src等

元素的屬性是什麼,分為兩種,一種叫內建屬性,一種叫非內建屬性。

內建屬性可以直接通過點"."進行操作

tagname               //返回值是當前元素的標籤名

innerhtml/innertext  //返回值是當前元素的內容

id                    //返回值是當前元素的id

title                 //獲取title的標籤值,這個title是從document中獲取的

classname             //返回值是當前元素的class

href                  //返回值是當前的href的值

以上這些屬性既可以獲取,也可以設定

非內建屬性需要通過一些節點的方法進行操作,注意:節點的方法,字首一定是節點

getattribute()        //獲取 元素的屬性

setattribute()        //設定/修改 元素的屬性,低版本的ie不相容;接收兩個引數,屬性名和屬性值

removeattribute()     //刪除 元素的屬性,低版本的ie不相容

2.節點

根據dom規定,html文件中的每個成分都是乙個節點。

dom是這樣規定的:

整個文件是乙個文件節點

每個html標籤是乙個元素節點

包含在html元素中的文字是文字節點

每乙個html屬性是乙個屬性節點

注釋屬於注釋節點 相當於html文件中的所有內容都是節點,元素是節點的別稱,節點包含元素,當然節點還有好多細化的種類

如何獲取dom節點:

物件.parentnode    //獲得父元素節點

物件.children      //獲得子元素節點的集合,不包含空白節點

//但ie7包含首個注釋節點(前面沒有元素節點),ie8包含所有注釋節點

物件.childnodes    //獲得所有子節點的集合,包括空白節點

//ie7/8不包含空文字節點,但ie7包含首個注釋節點(前面沒有元素節點),ie8包含所有注釋節點

如何獲取屬性節點:

物件.attributes   //獲得所有屬性節點,返回乙個陣列

3.childnodes/過濾空白節點

通過 物件.childnodes 獲得所有子節點的集合

節點屬性 nodetype 返回值為數值

節點型別(nodetype)    節點名字(nodename)    節點值(nodevalue)

元素節點         1                  標籤名                 null

文字節點         3                  #text                 文字

注釋節點         8                 #comment             注釋的文字

文件節點         9                 #document              null

屬性節點         2                  屬性名                屬性值

通過遍歷所有子節點,將空白節點過濾掉,得出所有的元素節點

4.高階選取firstchild/lastchild/parentnode/previoussibling/nextsibling

父(parent)、子(child)和同胞(sibling)等術語用於描述這些關係。父節點擁有子節點。同級的子節點被稱為同胞(兄弟)。

物件.childnodes              //獲取當前元素節點的所有子節點

物件.ownerdocument           //獲取該節點的文件根節點,相當與 document

物件.firstchild              //獲得第乙個子節點。(ie7/8非空白節點,可能是注釋節點)

物件.firstelementchild       //獲得第乙個非空白的子節點。(ie7/8不支援)

物件.lastchild               //獲得最後乙個子節點(ie7最後乙個元素節點,ie8最後乙個非空白節點,可能是注釋節點)

物件.lastelementchild        //獲得最後乙個非空白的子節點。(ie7/8不支援)

物件.nextsibling             //獲得下乙個兄弟節點。(包含空白節點和注釋,ie7/8包括注釋節點,不包括空白節點)

物件.nextelementsibling      //獲得下個兄弟節點。(ie7/8不支援)

物件.previoussibling         //獲得上乙個兄弟節點。(包含空白節點和注釋。ie7/8包括注釋節點,不包括空白節點)

物件.prveiouselementsibling  //獲得上乙個兄弟節點。(ie7/8不支援)

缺點:相容性不好

5.dom元素的基本操作(增/刪/改/查)

查詢:選擇器;

刪除:removechild()  配合  parentnode

元素.remove()    直接刪除當前元素

document.body.removechild(div);

修改: outerhtml

oh1.outerhtml = ""

建立文字節點createtextnode(「hello」)

使用方式同createelement()

DOM的基本操作

dom是針對於html和xml文件的乙個api 應用程式程式設計介面 是w3c組織推薦的處理可擴充套件標誌語言的標準程式設計介面。在網頁上,組織頁面 或文件 的物件被組織在乙個樹形結構中,用來表示文件中物件的標準模型就稱為dom。當網頁被載入時,瀏覽器會建立頁面的文件物件模型 在dom中,可以將任何...

DOM 基本操作

關於dom 1.html 文件可以看成是一棵樹,其中的內容是這棵樹的節點 2.dom 樹上的節點之間有父子關係 兄弟關係 3.節點之間還有順序關係 4.可以通過對 dom 樹的操作來修改 html 文件 文件處理 1.內部插入 培訓 3 prepend content 向每個元素內部的前部新增 di...

DOM基本操作

獲取節點的屬性 1.獲取div的上乙個節點 div.previoussibling 2.獲取div的上乙個標籤節點 div.previouselementsibling 3.獲取div的下乙個節點 div.nextsibling 4.獲取div的下乙個標籤節點 div.nextelementsibl...