详细说说querySelectorAll和getElementsByClass
时间: 2023-11-07 15:20:15 浏览: 148
javascript之querySelector和querySelectorAll使用说明
5星 · 资源好评率100%
querySelectorAll和getElementsByClass都是JavaScript中用于获取DOM元素的方法,但是它们有一些不同点。
querySelectorAll是一个比较新的API,它可以通过CSS选择器来获取DOM元素,返回的是一个NodeList对象,可以使用forEach方法进行遍历。例如,如果我们想要获取class为"example"的所有div元素,可以使用以下代码:
```
const elements = document.querySelectorAll('div.example');
elements.forEach(element => {
// do something with each element
});
```
getElementsByClass是一个比较老的API,它只能通过class名来获取DOM元素,返回的是一个HTMLCollection对象,也可以使用forEach方法进行遍历。例如,如果我们想要获取class为"example"的所有div元素,可以使用以下代码:
```
const elements = document.getElementsByClassName('example');
Array.from(elements).forEach(element => {
// do something with each element
});
```
需要注意的是,getElementsByClass返回的是HTMLCollection对象,而不是Array对象,因此需要使用Array.from方法将其转换为数组才能使用forEach方法进行遍历。此外,querySelectorAll可以选择更多种类的元素,例如标签名、属性、伪类等,而getElementsByClass只能选择class。
阅读全文