原生js方法document.getElementsByClassName在ie8及其以下的兼容性问题
浏览:31日期:2024-07-11
原生js方法document.getElementsByClassName在ie8及其以下浏览器中,不能使用。 修改:加入兼容性判断,在需要用到该方法的位置修改为getClassNames方法。 代码如下: 原来方法: document.getElementsByClassName(’tabs_div’); 这里的调用方法为:getClassNames(’tabs_div’ , ’div’); 复制代码代码如下: var divs = getClassNames(’tabs_div’ , ’div’); function getClassNames(classStr,tagName){ if (document.getElementsByClassName) { return document.getElementsByClassName(classStr) }else { var nodes = document.getElementsByTagName(tagName),ret = []; for(i = 0; i nodes.length; i++) { if(hasClass(nodes[i],classStr)){ ret.push(nodes[i]) } } return ret; } } function hasClass(tagStr,classStr){ var arr=tagStr.className.split(/s+/ ); //这个正则表达式是因为class可以有多个,判断是否包含 for (var i=0;iarr.length;i++){ if (arr[i]==classStr){ return true ; } } return false ; }
标签:
JavaScript
相关文章:
热门推荐
- meta http-equiv='X-UA-Compatible' content='IE=7' 意思是将IE8用IE7进行渲染
- 1.hbuilder配置nodejs
- 2.js完美解决IE6不支持position:fixed的bug
- 3.hbuildercss怎么用
- 4.在ASP.NET中存取图片到数据库的示例
- 5.JS 逻辑判断不要只知道用 if-else 和 switch条件判断(小技巧)
- 6.golang 输出重定向:fmt Log,子进程Log,第三方库logrus的详解
- 7.ASP 3.0高级编程(二十五)
- 8.在Flash中使用ASP技术
- 9.如何在FreeBSD上用PHP实现在线添加FTP用户
- 10.golang的时区和神奇的time.Parse的使用方法