document.querySelector(),document.querySelectorAll()
除了使用DOM的对象结点之间的关系选择一个元素结点外,还可以通过CSS的选择器选择元素结点。
document
对象中,有两个方法querySelector()
和querySelectorAll()
。
这两个方法的参数相同,都是一个CSS选择器表达式(字符串形式)
,通过这个选择器表达式,选择元素。
举例:
<script type="text/javascript">
window.onload = function(){
var top = document.querySelector("#top");
console.log("--------querySelector()---------\n" + top.innerHTML);
var p = document.querySelector(".top p");
console.log("--------querySelector()---------\n" + p.innerHTML);
tops = document.querySelectorAll(".top");
console.log("--------querySelectorAll()选择多个-------")
for(let i = 0; i < tops.length; ++i){
console.log(tops[i].innerHTML);
}
};
</script>
<body>
<div id="main">
<div id="top" class="top">1</div>
<div id class="top"><p>2</p></div>
</div>
</body>
通过上面的例子也可以看到,对于querySelector()
方法来说,只会返回匹配的第一个元素结点。
querySelectorAll()
会把匹配的所有元素节点封装成一个数组返回。