原生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+/ );
- for (var i=0;i<arr.length;i++){
- if (arr[i]==classStr){
- return true ;
- }
- }
- return false ;
- }