前端JavaScript——解决getElementsByClassName在低版本IE浏览器不支持的问题

 使用函数封装的方法解决getElementsByClassName在低版本IE浏览器不支持的问题

在这里呢,支持从父节点开始查起,(可以不用从document查起)

在这个函数的两个参数中呢,parent代表的是父节点,classStr代表的是需要查询的class属性的值,里面放的是一个字符串

具体步骤如下:

1.找到parent节点下的所有元素节点,这里用通配符*来代替

2,声明一个用来记录符合条件的元素节点的数组

3,如果符合条件呢就将这个节点添加到这个数组中

4,最后,将装有符合条件的元素节点的数组返回

【注】至于什么叫做元素节点,请看下面具体介绍!!!

function elementByClassName(parent, classStr){
    
    var nodes = parent.getElementsByTagName("*");
    var result = [];
    for(var i = 0 ; i < nodes.length; i++){
        if(nodes[i].className == classStr){
            result.push(nodes[i]);
        }
    }
    return result;
}

元素节点 

 元素节点是在DOM(Document Object Model    W3C(万维网联盟)的标准)中涉及的定义。

在DOM中有三种节点,并且在JS中,所有节点都是对象,三种节点分别是:
        元素节点  : 标签名称(在我看来是这样,欢迎小伙伴批评指正),

        属性节点  : 类似这样的:title = "属性节点"

        文本节点   :标签中的文本内容

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值