原生js方法document.getElementsByClassName在ie8及其以下的兼容性问题
浏览:51日期: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
相关文章:1. JS实现获取图片大小和预览的方法完整实例【兼容IE和其它浏览器】2. DIV+CSS相对IE6 IE7和IE8浏览器行为区别及兼容性问题整理3. zend studio怎么导入php项目?zend studio导入php项目文件方法4. css FF与IE兼容性总结5. JavaScript代码因逗号不规范导致IE不兼容的问题6. CSS布局中可以用javascript判断浏览器版本7. JavaScript在IE和FF下的兼容性问题8. 如何在asp.net中进行mvc异步查询? mvc异步查询办法9. nokia6681换耳机-对待JS的方法10. 如何解决vue2.0下IE浏览器白屏问题

