搜索
  • 登录
  • 注册
密码重置成功

关注您感兴趣的项目并了解有关它们的最新消息

HTML DOM 导航

收藏 49
阅读 20169
更新时间 2016-09-11

通过 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 树结构和导航的理解。

热AI工具
Undress AI Tool
Undress AI Tool

免费脱衣服图片

AI Clothes Remover
AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undresser.AI Undress
Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

Stock Market GPT
Stock Market GPT

人工智能驱动投资研究,做出更明智的决策

热门工具
记事本++7.3.1
记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版
SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1
禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6
Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版
SublimeText3 Mac版

神级代码编辑软件(SublimeText3)