初識DOM(二)

之前學(xué)習(xí)了什么是DOM, 知道了DOM就是節(jié)點,那么面臨的第二個問題就是,我們應(yīng)該怎樣去使用這些節(jié)點呢。

想要使用這些元素節(jié)點呢,首先就要先獲取元素節(jié)點,然后再對其進(jìn)行操作。

那么如何獲取元素節(jié)點呢?DOM提供了三種方法,getElementById()、getElementsByTagName()、getElementsByClassName()來獲取。

1.getElementById

getElementById() 方法返回帶有指定 ID 的元素:

使用方法:document.getElementById(id);

這是之前使用過的一段代碼:

接下來用它來進(jìn)行具體的操作。

document.getElementById("like");

這個語句就獲取了id屬性值為"like"的這個元素,然后用typeof操作符查看它的操作數(shù)是什么類型。

在代碼中加入:

<script>

alert(typeof document.getElementById("like"));

</script>

結(jié)果如下圖所示,其結(jié)果說明document.getElementById("like")的類型是一個對象,事實上,文檔中的每一個元素都是一個對象。利用這個方法我們可以得到HTML中的任何一個對象。但是id是獨一無二的,當(dāng)我們需要獲取沒有id的對象是就要用到getElementsByTagName方法了。


2.getElementsByTagName

getElementsByTagName() 返回帶有指定標(biāo)簽名的所有元素。

使用方法:document.getElementsByTagName(tagname);

這個方法與getElementById方法有些相似的地方,但是不同的地方是它返回的是一個數(shù)組,例如將之前的句子改成:

alert(document.getElementsByTagName("li").length);

其結(jié)果為:



結(jié)果顯示的是3,而我們的代碼中有三個li標(biāo)簽,說明這個句子獲取了所有指定的標(biāo)簽名的所有元素。如果要對其中一個li標(biāo)簽進(jìn)行操作的話,只要知道該標(biāo)簽的位置就可以使用了。這里的每個元素都是一個對象,我們可以用之前的typeof方法來證明一下。為了不用反復(fù)的敲同一段代碼將其賦值給一個變量。

var items=document.getElementsByTagName("li");

for(var i=0;i<items.length;i++){

alert(typeof items[i]);

}


你會看到三個如上圖一樣的警告框,說明items中的每一個元素都是一個對象。


3.getElementsByClassName

這個方法讓我們能夠通過class屬性中的類名訪問元素。

使用方法:document.getElementsByClassName(class);

這個方法的參數(shù)是類名,我們依舊使用alert來進(jìn)行操作:

alert(document.getElementsByClassName("fruit").length);


其結(jié)果如上圖所示,其長度為2,因為我們代碼中class為"fruit"的元素只有后兩個li標(biāo)簽,所以第一個li標(biāo)簽并沒有被我們獲取到。這樣的話當(dāng)我們需要對不同的li元素進(jìn)行操作時,也可以不用知道li標(biāo)簽是第幾個了,只要知道它們的類名,我們也能夠?qū)λM(jìn)行操作。

注釋:getElementsByClassName() 在 Internet Explorer 5,6,7,8 中無效。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一、概述 document節(jié)點是整個文檔樹的頂層節(jié)點,每張網(wǎng)頁都有自己的document節(jié)點。window.doc...
    周花花啊閱讀 1,423評論 0 1
  • DOM DOM內(nèi)容主要分為四部分: 什么是DOM和節(jié)點; 獲取節(jié)點; 節(jié)點操作(3種); 屬性操作(3種)。 什么...
    magic_pill閱讀 907評論 0 1
  • 親愛的,那個陪你最久的人會是誰呢?我想你們想說父母。對,我想也是吧,從我們剛來到世間,父母就是我們的依靠,為...
    藥妃閱讀 420評論 0 1
  • 此時八月,坐標(biāo)在深圳。 這次旅行計劃了至少三個月時間。上學(xué)期間我們?nèi)齻€最好的同學(xué)在相隔了十六年之后,打算在深圳再次...
    閑茶淡花閱讀 558評論 0 2
  • Python selenium —— 文件下載,不彈出窗口,直接下載到指定路徑
    dittoyy3991閱讀 359評論 0 0

友情鏈接更多精彩內(nèi)容