dom就是網(wǎng)頁中的元素妹孙,網(wǎng)頁中每一個標(biāo)簽都是一個node節(jié)點(diǎn),包括media获枝,title等元素涕蜂,通常分文四類
文檔節(jié)點(diǎn):就是整個網(wǎng)頁文檔 他的nodeName: "#document" nodeType: 9 nodeValue: null,document是瀏覽器給我們提供的的節(jié)點(diǎn)屬性映琳,他就代表著整個網(wǎng)頁机隙,我們可以通過document在網(wǎng)網(wǎng)頁中查找任何元素蜘拉,
元素節(jié)點(diǎn):每一個div,p有鹿,span旭旭,title等等標(biāo)簽 他的nodeName: "P"標(biāo)簽名字 nodeType: 1nodeValue: null
屬性節(jié)點(diǎn):每個標(biāo)簽元素上的屬性。例如id葱跋,class持寄,style 他的nodeName: "id"屬性名字 nodeType: 2nodeValue: 屬性值
文本節(jié)點(diǎn):就是標(biāo)簽中的內(nèi)容 他的nodeName: "#text" nodeType: 3nodeValue: 屬性內(nèi)容
通過document獲取元素節(jié)點(diǎn)的方式
document.getelementbyid('id') 通過id獲取元素
document.getElementsByTagName('img') 通過元素的標(biāo)簽名獲取元素
document.getElementsByName('name') 通過表單的name獲取元素
通過元素獲取元素的子節(jié)點(diǎn)的方式4、
getElementsByTagName 獲取該元素的下 的 標(biāo)簽名元素
childNodes: 獲取元素內(nèi)所有的節(jié)點(diǎn)元素包括HTML節(jié)點(diǎn)娱俺,所有屬性稍味,文本≤恚可以通過nodeType來判斷是哪種類型的節(jié)點(diǎn)模庐,只有當(dāng)nodeType==1時才是元素節(jié)點(diǎn),2是屬性節(jié)點(diǎn)油宜,3是文本節(jié)點(diǎn)掂碱。
注意 在ie8中只返回元素節(jié)點(diǎn),不包括文本節(jié)點(diǎn)
firstChild:獲取當(dāng)前元素下的第一個子節(jié)點(diǎn)慎冤。包括文本
lastChild:獲取當(dāng)前元素下的最后一個子節(jié)點(diǎn)疼燥。包括文本
children : 獲取元素內(nèi)所有的節(jié)點(diǎn)元素包括HTML節(jié)點(diǎn),不包括問文本 1
獲取父節(jié)點(diǎn)和兄弟節(jié)點(diǎn)
通過具體的節(jié)點(diǎn)調(diào)用
- parentNode
-屬性,表示當(dāng)前節(jié)點(diǎn)的父節(jié)點(diǎn) - previousSibling
一屬性蚁堤,表示當(dāng)前節(jié)點(diǎn)的前一個兄弟節(jié)點(diǎn)醉者,包括文本空格 //previousE LementSibling獲取前一一個兄弟元素,IE8及以下不支持 /var pe = ana.previousElementSibling; - nextSibling
-屬性,表示當(dāng)前節(jié)點(diǎn)的后一個兄弟節(jié)點(diǎn)
document. querySelector 可以根據(jù)css選擇器來選擇需要的元素 這個方法支持ie8屬性披诗,但是他返回第一個返回值湃交,如果有多個,只會返回第一個
var div = document. querySelector(".box1 div");
document. querySelectorAll 這個屬性也支持選擇權(quán)選擇元素藤巢,他可以吧所有的相同class名字都選中
var ids = document.getElementById('xyz')
var pfirst = document.querySelector('#xyz p') //使用querySelector獲取xyz中的第一個p元素
var pnew = document.createElement('p') //創(chuàng)建一個p元素
var ptext = document.createTextNode('插入的元素') //創(chuàng)建一個文本元素
pnew.appendChild(ptext) //在p元素中插入一個文本元素
ids.insertBefore(pnew, pfirst) //將p元素插入到第一個p元素之前
<div id="xyz">
<p>插入的元素</p>
<p>第一個元素</p>
<p>第二個元素</p>
</div>
```javascript