JavaScript —— document中id属性不唯一时,id选择器如何工作


测试代码

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>document中存在相同id</title>
<style>
	#demo{
	 color:red;
	}
</style>
</head>
<body>
<p id="demo">单击按钮来改变这一段中的文本。</p>
<div id="demo">单击按钮来改变这一段中的文本。</div>
<p id="demo">单击按钮来改变这一段中的文本。</p>
<button onclick="myFunction()">点我</button>
<script>
function myFunction(){
	document.getElementById("demo").innerHTML=document.getElementById("demo");
	//document.querySelector("#demo").innerHTML=document.querySelector("#demo");
	//document.querySelector("#demo").innerHTML=document.querySelectorAll("#demo");
};
</script>
</body>
</html>

运行结果

在这里插入图片描述


定义

id是元素的属性,大小写敏感的字符串,在整个document中应该是唯一的。

ID选择器

ID选择器,包括CSS选择器JS选择器,当ID不唯一时,通过代码测试和文档,可以得出如下结论:

  • 对于CSS选择器,ID选择器对应的所有元素都会受到影响;
  • 对于JS选择器,document.querySelector()document.getElementById()都只会返回第一个查找到的Element,如果没有则返回null。如果你想要得到所有的相同id属性的Element可以使用document.querySelectorAll()
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章