JavaScript解决浏览器兼容性问题(七)—— DOM查询

问题描述

        JavaScript在获取元素时,有一个方法getElementsByClassName(),它可以根据class的值获取一组元素,这个方法哪都好,就是ie8及以下浏览器不支持。

        ②firstElementChild可以获取当前元素的第一个子元素,也是一个方便的方法,但是ie8还是不支持,所以如果需要兼容ie8的话不要使用。

①解决办法

        当我们只想获取一个元素时,可以用如下代码代替

document.querySelector("");

        一组元素的话,可以用如下代码代替

document.querySelectorAll("");

        用法是""里写好  .class值  或者  #id值

②解决办法

        举个例子,childNodes属性会获取包括文本节点在内的所有节点,根据DOM标签标签间空白也会当成文本节点,但是注意:在IE8及以下的浏览器中,不会将空白文本当成子节点。

        同理,想要在ie8及以下浏览器中获取当前元素的第一个子元素,直接用firstChild属性不就好啦。

        这样的问题还有很多,比如nextSibling和nextElementSibling、previousSibling和previouElementsSibling、lastChild和lastElementChild,我们就以firstChild和firstElementChild举例

if(obj.firstElementChild){
    。。。。。
}else if(obj.firstChild){
    。。。。。
}

        (obj为操作对象,  。为省略的语句)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

学习越学越多

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值