DOM(document object model) 即文檔對象模型。 DOM中共有三種類型的節(jié)點,元素節(jié)點、文本節(jié)點、屬性節(jié)點。
通過ID獲取元素 一個ID只能使用一次,所以,該方法會返回一個唯一的對象 注:可以使用typeof判斷變量的類型
typedof + 變量名
以下面這段代碼為例:
<html lang="en"> <head> <meta charset="utf-8"/> <title>Shopping list</title> </head> <body> <h1>What to by</h1> <p title="a gentle reminder">Don't forget to buy this stuff</p> <ul id="purchases"> <li>A tin of beans</li> <li class="sale">Cheese</li> <li class="sale implement">Milk</li> </ul> <script src="JS/test1.js"></script> </body></html>var temp = document.getElementById("purchases");alert(typeof temp);結(jié)果為object
根據(jù)標(biāo)簽名返回一個對象數(shù)組
使用以下javaScript語句:
var temp = document.getElementsByTagName("li");alert(temp.length);結(jié)果是3 ,表示一個長度為3的數(shù)組。也可以將函數(shù)參數(shù)改為通配符*,這樣表示獲取DOM中的所有標(biāo)簽。
通過類名獲取元素,返回一個數(shù)組。參數(shù)為類名,類名可以不唯一,多個類名表示同時含有多個類名的元素,類名順序可以不固定 這個方法比較新,不是所有瀏覽器都支持
可以通過getAttribute(attribute)獲取元素中的屬性值,通過setAttribute(attribute,value)來更改屬性的值,如果一個元素原來沒有這個屬性,使用setAttribute會先創(chuàng)建這個屬性在給這個屬性賦值,雖然創(chuàng)建了這個屬性,但是網(wǎng)頁的源碼并不會因此發(fā)生任何改變,
var temp = document.getElementsByTagName("p");for(var i = 0 ; i < temp.length; i++){ alert(temp[i].getAttribute("title")); temp[i].setAttribute("title","s"); alert(temp[i].getAttribute("title"));}結(jié)果是先彈出a gentle reminder,再彈出s,因為title的值被更改為s。
新聞熱點
疑難解答