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
收藏
暂无评论信息
- 相关文章
- 文章推荐
-
群辉nas docker容器 配置svn仓库,并实现外网访问
2022-08-11的这一天, 群辉nas到手了, 实现svn仓库外网的访问,折腾了好久。记录一下。
-
HTML 面试知识点总结
本部分主要是笔者在复习 HTML 相关知识和一些相关面试题时所做的笔记,如果出现错误,希望大家指出!
-
淘宝 NPM 镜像站喊你切换新域名啦
淘宝 NPM 镜像站(npm.taobao.org)自 2014 年 正式对外服务,一开始只是想简单地做 NPM 的中国镜像站点,回馈国内前端社区,不知不觉竟然一直运行到现在。当年参考 Ruby Gems 淘宝镜像 的方式,跟阿里开源组织申请了 taobao.org 的二级域名,镜像站点名称也自然而然地取名为 淘宝 NPM 镜像站 (下称 CNPM)。
-
半导体短缺即将结束?分析师:如果没有 1 美元芯片会影响更多
德勤咨询(Deloitte Consulting)的芯片分析师认为,随着芯片行业资本支出的增加,需求度较高的工厂已经开工,预示着短缺情况即将结束。
- 点击排行
- 站长推荐
- 猜你喜欢
- 网站信息
- 站内问答:12篇
- 站内文章:210篇
- 建站时间:已运行1038天
- 备案号: 浙ICP备2022018799号
- 语言:
English(USA)
French(FR)
Chinese(ZH)
无数据