跟著大漠先生學習《DOM系列:getElement* 和 querySelector*》一文:
原文: https://www.w3cplus.com/javascript/searching-elements-dom.html © w3cplus.com
跟著大漠先生學習的筆記和自己總結的一些東西。
今天來講getElement*
和querySelector*:
getElementById()
getElementsByClassName()
getElementsByTagName()
getElementsByName()
document.querySelector()
document.querySelectorAll()
* getElementById()
在HTML文档中,元素的id
是唯一的,也就是说,一个页面只有唯一的id
名,这个id
就是一个全局变量(如果应用到JavaScript中的话)。
語法:
element.getElementById(id)
栗子一:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<p id="demo">单击按钮来改变这一段中的文本。</p>
<script>
document.getElementById("demo").innerHTML="Hello World";
</script>
</body>
</html>
結果為:
需要注意的是,id
是唯一的,按规范的原则性来说,id
也必须是唯一的。言外之意,文档中只有一个元素与给定的id
相匹配。如果当文档中有多个具有相同id
的元素时,那么相应的方法document.getElementById()
获取的元素行为是不可预测的。浏览器可能会随机返回任何一个。所以,我们在使用的时候,必须保持id
的独特性,唯一性。
document.getElementById()
只能在document
对象上调用,它在整个文档中查找给定的id
。
* getElementsByClassName()
定义和使用
getElementsByClassName() 方法返回文档中所有指定类名的元素集合,作为 NodeList 对象。
NodeList 对象代表一个有顺序的节点列表。NodeList 对象 我们可通过节点列表中的节点索引号来访问列表中的节点(索引号由0开始)。
提示: 你可以使用 NodeList 对象的 length 属性来确定指定类名的元素个数,并循环各个元素来获取你需要的那个元素。
<