ie浏览器下兼容获取类名
分类专栏: Javascript&
简介 兼容ie8以下获取className
<p><span class="ql-size-large">// 兼容ie8以下获取className</span></p><p><span class="ql-size-large">var forms = {</span></p><p><span class="ql-size-large"> getElementsByClassName: function(str){</span></p><p><span class="ql-size-large"> var searchClass = str.searchClass;//存储要查找的类名</span></p><p><span class="ql-size-large"> var node = str.node|| document;//存储要查找的范围</span></p><p><span class="ql-size-large"> var tag = str.tag||'*';//存储一定范围内要查找的标签</span></p><p><span class="ql-size-large"> var result = [];</span></p><p><span class="ql-size-large"> // 判断浏览器不支持getElementsByClassName方法</span></p><p><span class="ql-size-large"> if(document.getElementsByClassName){ //如果浏览器支持</span></p><p><span class="ql-size-large"> var nodes = node.getElementsByClassName(searchClass);</span></p><p><span class="ql-size-large"> if(tag !=='*'){</span></p><p><span class="ql-size-large"> for(var i=0;node=nodes[i++];){</span></p><p><span class="ql-size-large"> if(node.tagName === tag.toUpperCase()){</span></p><p><span class="ql-size-large"> result.push(node);</span></p><p><span class="ql-size-large"> }</span></p><p><span class="ql-size-large"> }</span></p><p><span class="ql-size-large"> }else{</span></p><p><span class="ql-size-large"> result = nodes;</span></p><p><span class="ql-size-large"> }</span></p><p><span class="ql-size-large"> return result;</span></p><p><span class="ql-size-large"> }else{ //使IE8以下的浏览器能够支持该属性</span></p><p><span class="ql-size-large"> var els = node.getElementsByTagName(tag);</span></p><p><span class="ql-size-large"> var elsLen = els.length;</span></p><p><span class="ql-size-large"> var i,j;</span></p><p><span class="ql-size-large"> var pattern = new RegExp("(^|\\s)" + searchClass + "(\\s|$)");</span></p><p><span class="ql-size-large"> for(i = 0,j=0;i<elsLen;i++){</span></p><p><span class="ql-size-large"> if(pattern.test(els[i].className)){ //检测正则表达式</span></p><p><span class="ql-size-large"> result[j] = els[i];</span></p><p><span class="ql-size-large"> j++;</span></p><p><span class="ql-size-large"> }</span></p><p><span class="ql-size-large"> }</span></p><p><span class="ql-size-large"> return result;</span></p><p><span class="ql-size-large"> } </span></p><p><span class="ql-size-large"> }</span></p><p><span class="ql-size-large">}</span></p>
分享到:
转载:
喜欢 3
收藏
暂无评论信息
- 文章推荐
-
亚马逊推出“无需收银员”的新技术,以此帮助品牌和广告商提高销量
北京时间 6 月 30 日早间消息,据报道,亚马逊发明了一种无需收银员的技术,可以加快人们去杂货店或便利店的速度。现在,该公司希望利用这个跟踪系统来帮助品牌和广告商提高销量。&
-
眼镜试戴的装饰效果
开发眼镜类产品的时候需要使用试戴的功能,这里就有你需要的学习资料哦!
-
git:如何管理本机的多个ssh密钥(多个远程仓库账号)
如果我们电脑上已经存在了一个ssh key,那么我们需要在我们电脑上生成第二个你想在本电脑上使用的id_rsa,使用命令:ssh-keygen -t rsa -C "你的github账号"。
-
半导体短缺即将结束?分析师:如果没有 1 美元芯片会影响更多
德勤咨询(Deloitte Consulting)的芯片分析师认为,随着芯片行业资本支出的增加,需求度较高的工厂已经开工,预示着短缺情况即将结束。
- 点击排行
- 站长推荐
- 猜你喜欢
- 网站信息
- 站内问答:12篇
- 站内文章:207篇
- 建站时间:已运行917天
- 备案号: 浙ICP备2022018799号
- 语言:
English(USA)
French(FR)
Chinese(ZH)
无数据