IE8以下不支持getElementsByClassName方法
Posted codeing or artist ?
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IE8以下不支持getElementsByClassName方法相关的知识,希望对你有一定的参考价值。
1 function getElementsByClassName(classStr,tagName,element){ 2 tagName = (tagName || ‘*‘); 3 element = (element || document); 4 5 if(typeof tagName == ‘object‘){ 6 element = tagName; tagName = ‘*‘; 7 } 8 9 if(document.getElementsByClassName){ 10 return element.getElementsByClassName(classStr); 11 }else{ 12 var nodes = element.getElementsByTagName(tagName), 13 ret = []; 14 for(i = 0; i < nodes.length; i++) { 15 if(hasClass(nodes[i],classStr)) ret.push(nodes[i]); 16 } 17 return ret; 18 } 19 20 function hasClass(tagStr,classStr){ 21 var arr=tagStr.className.split(/\s+/ ); //这个正则表达式是因为class可以有多个,判断是否包含 22 for (var i=0;i<arr.length;i++){ 23 if (arr[i]==classStr) return true; 24 } 25 return false; 26 }; 27 };
以上是关于IE8以下不支持getElementsByClassName方法的主要内容,如果未能解决你的问题,请参考以下文章
IE8以下不支持getElementsByClassName方法
填个小坑,Vue不支持IE8及以下,跨域ajax不支持IE9
在IE8及以下的浏览器中,不支持placeholder属性的解决办法
js解决IE8不支持html5,css3的问题(respond.js 的使用注意)
window.getComputedStyle能够获取元素的实际样式,但是低版本的ie8及以下不支持,如何在低版本的ie上兼容类似的功能