HTML DOM 導覽



透過 HTML DOM,您能夠使用節點關係在節點樹中導覽。


HTML DOM 節點清單

getElementsByTagName() 方法傳回節點清單。節點列表是一個節點數組。

下面的程式碼選取文件中的所有<p> 節點:

#實例

<html><!DOCTYPE html>
<html>
<body>

<p>Hello World!</p>
<p>The DOM is very useful!</p>

<script>
x=document.getElementsByTagName("p");
document.write("The innerHTML of the second paragraph is: " + x[1].innerHTML);
</script>

</body>
</html>

執行實例»

點擊"運行實例" 按鈕查看線上實例

注意:

下標號從0 開始。


HTML DOM 節點清單長度

length 屬性定義節點清單中節點的數量。

您可以使用length 屬性來循環節點清單:

實例

<html><!DOCTYPE html>
<html>
<body>

<p>Hello World!</p>
<p>The DOM is very useful!</p>
<p>This example demonstrates the <b>length</b> property.</p>

<script>
x=document.getElementsByTagName("p");
for (i=0;i<x.length;i++)
  { 
  document.write(x[i].innerHTML);
  document.write("<br>");
  }
</script>
</body>
</html>

##執行實例»點擊"運行實例" 按鈕查看線上實例

實例解析:

  • #取得所有<p> 元素節點







#輸出每個<p> 元素的文字節點的值




#導航節點關係
您能夠使用三個節點屬性:parentNode 、firstChild 以及lastChild ,在文件結構中進行導覽。
  • 請看下面的HTML 片段:

  • <html>
  • <body>

    <p>Hello World!</p> ;
  • <div>
  •   <p>The DOM is very useful!</p>

      <p>This example demonstrates node relationships.</p>

    </div>
</body>

</html>



希希;

#首個<p> 元素是<body> 元素的第一個子元素(firstChild)

<div> 元素是<body> 元素的最後一個子元素(lastChild)

<body> 元素是首個<p> 元素與<div> 元素的父節點(parentNode)###### #######firstChild 屬性可用來存取元素的文字:########實例######
<html><!DOCTYPE html>
<html>
<body>

<p id="intro">Hello World!</p>

<script>
x=document.getElementById("intro");
document.write(x.firstChild.nodeValue);
</script>

</body>
</html>
########執行實例»###### #點擊"運行實例" 按鈕查看線上實例#############DOM 根節點######這裡有兩個特殊的屬性,可以存取全部文件:###### ######document.documentElement - 全部文件############document.body - 文件的主體##############實例### ###
<html><!DOCTYPE html>
<html>
<body>

<p>Hello World!</p>
<div>
<p>The DOM is very useful!</p>
<p>This example demonstrates the <b>document.body</b> property.</p>
</div>

<script>
alert(document.body.innerHTML);
</script>

</body>
</html>
#########運行實例»#######點擊"運行實例" 按鈕查看線上實例#######

childNodes 和 nodeValue

除了 innerHTML 屬性,您也可以使用 childNodes 和 nodeValue 屬性來取得元素的內容。

下面的程式碼取得id="intro" 的<p> 元素的值:

實例

<html><!DOCTYPE html>
<html>
<body>

<p id="intro">Hello World!</p>

<script>
txt=document.getElementById("intro").childNodes[0].nodeValue;
document.write(txt);
</script>

</body>
</html>

##########################################執行實例»######點擊"執行實例" 按鈕查看線上實例#########在上面的範例中,getElementById 是一個方法,而childNodes 和nodeValue 是屬性。 ######在本教學中,我們將使用 innerHTML 屬性。不過,學習上面的方法有助於對 DOM 樹結構和導航的理解。 ######