HTML DOM 方法&属性

2019-04-05  本文已影响0人  子午禾苇

HTML DOM 方法

方法:我们可以在节点(HTML 元素)上执行的动作

编程接口

可通过 JavaScript (以及其他编程语言)对 HTML DOM 进行访问。
所有 HTML 元素被定义为对象,而编程接口则是对象方法和对象属性。
方法 是您能够执行的动作(比如添加或修改元素)。
属性 是您能够获取或设置的值(比如节点的名称或内容)。

HTML DOM 对象 - 方法和属性

➡️一些常用的 HTML DOM 方法:
➡️一些常用的 HTML DOM 属性:

举例:某个人是一个对象。
人的 方法 可能是 eat(), sleep(), work(), play() 等等。
所有人都有这些方法,但会在不同时间执行它们。
一个人的 属性 包括姓名、身高、体重、年龄、性别等等。
所有人都有这些属性,但它们的值因人而异。

方法 描述
getElementById() 返回带有指定 ID 的元素。
getElementsByTagName() 返回包含带有指定标签名称的所有元素的节点列表(集合/节点数组)。
getElementsByClassName() 返回包含带有指定类名的所有元素的节点列表。
appendChild() 把新的子节点添加到指定节点。
removeChild() 删除子节点。
replaceChild() 替换子节点。
insertBefore() 在指定的子节点前面插入新的子节点。
createAttribute() 创建属性节点。
createElement() 创建元素节点。
createTextNode() 创建文本节点。
getAttribute() 返回指定的属性值。
setAttribute() 把指定属性设置或修改为指定的值。

HTML DOM 属性

属性 是节点(HTML 元素)的值,您能够获取或设置。

innerHTML 属性

获取元素内容的最简单方法是使用 innerHTML 属性。
innerHTML 属性对于获取或替换 HTML 元素的内容很有用。
实例
下面的代码获取 id="intro" 的 <p> 元素的 innerHTML:

<html>
<body>

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

<script>
var txt=document.getElementById("intro").innerHTML;
document.write(txt);
</script>

</body>
</html>

输出结果:

Hello World!
Hello World!

getElementById 是方法, innerHTML 是属性。
innerHTML 属性可用于获取或改变任意 HTML 元素,包括 <html> 和 <body>

nodeName 属性

nodeName 属性 规定节点的名称
nodeName 是 只读
元素节点的 nodeName 与标签名相同
属性节点的 nodeName 与属性名相同
文本节点的 nodeName 始终是 #text
文档节点的 nodeName 始终是 #document
✳️:nodeName 始终包含 HTML 元素的大写字母标签名。

nodeValue 属性

nodeValue 属性 规定节点的值
元素节点的 nodeValue 是 undefined 或 null
文本节点的 nodeValue 是文本本身
属性节点的 nodeValue 是属性值
获取元素的值
下面的例子会取回 <p id="intro"> 标签的文本节点值:

<html>
<body>

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

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

</body>
</html>

输出结果:

Hello World!
Hello World!

nodeType 属性

nodeType 属性 返回节点的类型。nodeType 是 只读 的。
比较重要的节点类型有:

元素类型 NodeType
元素 1
属性 2
文本 3
注释 8
文档 9

HTML DOM 访问

访问 HTML DOM - 查找 HTML 元素

➡️访问 HTML 元素(节点)

访问 HTML 元素等同于访问节点

➡️➡️访问 HTML 元素的不同的方式:
➡️➡️➡️getElementById() 方法

返回带有指定 ID 的元素
语法:node.getElementById("id");
获取 id="intro" 的元素:document.getElementById("intro");

➡️➡️➡️getElementsByTagName() 方法

返回带有指定标签名的所有元素
语法:node.getElementsByTagName("tagname");
返回包含文档中所有 <p> 元素的列表:document.getElementsByTagName("p");
返回包含文档中所有 <p> 元素的列表,并且这些 <p> 元素应该是 id="main" 的元素的后代(子、孙等等):document.getElementById("main").getElementsByTagName("p");

➡️➡️➡️getElementsByClassName() 方法

查找带有相同类名的所有 HTML 元素
document.getElementsByClassName("intro");
上面的例子返回包含 class="intro"的所有元素的一个列表:
⚠️注释:getElementsByClassName()在 Internet Explorer 5,6,7,8 中无效。


上一篇 下一篇

猜你喜欢

热点阅读