document.getElementsByClassName怎么通过父元素找子元素
时间: 2023-11-30 09:40:10 浏览: 41
可以通过以下代码实现:
```javascript
function getElementsByClassName(fatherId,tagName,className){
var node = fatherId && document.getElementById(fatherId) || document,
tag = tagName || '*',
classNames = className.split(' '),
i = 0,
j = 0,
classLen = classNames.length,
result = [];
for(; i < node.length; i++){
if(node[i].nodeType === 1){
for(j = 0; j < classLen; j++){
if(!new RegExp('(^|\\s)' + classNames[j] + '(\\s|$)').test(node[i].className)){
break;
}
}
if(j === classLen){
result.push(node[i]);
}
}
}
return result;
}
```
其中,fatherId为父元素的ID,tagName为子元素的标签名,className为子元素的class名称,可以通过空格分开多个class名称。函数返回一个数组,包含所有符合条件的子元素。
--相关问题--:
1. document.getElementsByClassName和document.querySelectorAll
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)