溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

JavaScript屬性節(jié)點(diǎn)有哪些類型

發(fā)布時(shí)間:2022-02-17 09:11:02 來(lái)源:億速云 閱讀:185 作者:iii 欄目:web開(kāi)發(fā)

本篇內(nèi)容介紹了“JavaScript屬性節(jié)點(diǎn)有哪些類型”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

在JavaScript中,屬性節(jié)點(diǎn)指的是屬性對(duì)象,代表著HTML元素的一個(gè)屬性;屬性節(jié)點(diǎn)的常量表示為“ATTRIBUTE_NODE”,代表的常量值為“2”,可以利用該常量來(lái)判斷節(jié)點(diǎn)類型。

本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。

DOM(Document Object Model)即文檔對(duì)象模型。使用 DOM 技術(shù)可以實(shí)現(xiàn)網(wǎng)頁(yè)的動(dòng)態(tài)變化,如可以動(dòng)態(tài)地顯示或隱藏一個(gè)元素,改變它們的屬性,增加一個(gè)元素等。DOM 技術(shù)極大地增強(qiáng)了用戶與網(wǎng)頁(yè)的交互性。

DOM 節(jié)點(diǎn)類型

DOM 樹(shù)中的節(jié)點(diǎn)可根據(jù)不同的方式分類。根據(jù)節(jié)點(diǎn)的層次來(lái)分,主要可分為:祖先節(jié)點(diǎn)(當(dāng)前節(jié)點(diǎn)上面的所有節(jié)點(diǎn)的統(tǒng)稱)、父子節(jié)點(diǎn)(表示上下兩層節(jié)點(diǎn)之間的關(guān)系)、子孫節(jié)點(diǎn)(當(dāng)前節(jié)點(diǎn)下面的所有節(jié)點(diǎn)的統(tǒng)稱)和兄弟節(jié)點(diǎn)(具有相同父節(jié)點(diǎn)的所有節(jié)點(diǎn)統(tǒng)稱)等幾種。

根據(jù)節(jié)點(diǎn)類型來(lái)分,主要可分為:document 節(jié)點(diǎn)、元素節(jié)點(diǎn)、屬性節(jié)點(diǎn)、文本節(jié)點(diǎn)、注釋節(jié)點(diǎn)這幾種。不同類型的節(jié)點(diǎn)具有一個(gè)對(duì)應(yīng)的常量,代表特定的值,可使用這個(gè)常量來(lái)判斷節(jié)點(diǎn)類型,常用 HTML DOM 節(jié)點(diǎn)的常量表示及代表的值見(jiàn)下表。

表:HTML DOM 節(jié)點(diǎn)類型及其常量
節(jié)點(diǎn)類型節(jié)點(diǎn)類型常量常量值
document 節(jié)點(diǎn)DOCUMENT_NODE9
元素節(jié)點(diǎn)ELEMENT_NODE1
屬性節(jié)點(diǎn)ATTRIBUTE_NODE2
文本節(jié)點(diǎn)TEXT_NODE3
注釋節(jié)點(diǎn)COMMENT_NODE8

JS屬性節(jié)點(diǎn)

在 HTML DOM 中,一個(gè)屬性節(jié)點(diǎn)就是一個(gè)屬性對(duì)象,代表 HTML 元素的一個(gè)屬性。一個(gè)元素可以擁有多個(gè)屬性。元素的所有屬性存放在表示無(wú)序的集合 NamedNodeMap 中。NamedNodeMap 中的節(jié)點(diǎn)可通過(guò)名稱或索引來(lái)訪問(wèn)。

使用 DOM 處理 HTML 文檔元素,有時(shí)需要處理元素的屬性,此時(shí)需要使用到屬性節(jié)點(diǎn)的屬性和相關(guān)方法。屬性節(jié)點(diǎn)的常用屬性和相關(guān)方法見(jiàn)下表。

表:屬性節(jié)點(diǎn)的常用屬性和相關(guān)方法
屬性/方法描述
nodeName | name通過(guò)屬性對(duì)象來(lái)引用,返回元素屬性的名稱
nodeValue | value通過(guò)屬性對(duì)象來(lái)引用,設(shè)置或返回元素屬性的值
Item(節(jié)點(diǎn)下標(biāo))返回屬性節(jié)點(diǎn)集中指定下標(biāo)的節(jié)點(diǎn)
lengh返回屬性節(jié)點(diǎn)集的節(jié)點(diǎn)數(shù)
nodeType返回屬性節(jié)點(diǎn)的類型值

注:屬性 name 和 nodeName 的作用等效,value 和 nodeValue 的作用等效。

示例:操作屬性節(jié)點(diǎn)。

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>操作屬性節(jié)點(diǎn)</title>
</head>
<body>
  <a href="ex7-1.html" title="document節(jié)點(diǎn)的應(yīng)用" id="a1">document節(jié)點(diǎn)</a>
  <script>
          var oA = document.getElementById('a1');
          var aAttr = oA.attributes;//獲取a元素的所有屬性節(jié)點(diǎn)
          console.log('a元素具有以下屬性節(jié)點(diǎn):');
          for(var i = 0; i < aAttr.length; i++){//遍歷a元素的所有屬性節(jié)點(diǎn)
              console.log(aAttr[i]);
          }
          console.log('aAttr[0]節(jié)點(diǎn)類型為:'+aAttr[0].nodeType);//獲取第一個(gè)屬性節(jié)點(diǎn)的類型值
          console.log('aAttr[0]節(jié)點(diǎn)名稱為:'+aAttr[0].nodeName);//獲取第一個(gè)屬性節(jié)點(diǎn)的節(jié)點(diǎn)名
          console.log('aAttr[0]節(jié)點(diǎn)值為:'+aAttr[0].nodeValue);//獲取第一個(gè)屬性節(jié)點(diǎn)的節(jié)點(diǎn)值
  </script>
</body>
</html>

訪問(wèn)屬性節(jié)點(diǎn)列表中的元素還可以使用 item(),aAttr[0] 等效于 aAttr.item(0),另外,aAttr[0].nodeName 等效于 aAttr[0].name,aAttr[0].nodeValue 等效于 aAttr[0].value。上述代碼在 Chrome 瀏覽器中的運(yùn)行結(jié)果如圖 1 所示。

JavaScript屬性節(jié)點(diǎn)有哪些類型

“JavaScript屬性節(jié)點(diǎn)有哪些類型”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI