IE浏览器下getElementsByClassName()属性的使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IE浏览器下getElementsByClassName()属性的使用相关的知识,希望对你有一定的参考价值。

Q:getElementsByClassName() 在IE浏览器下不过正常使用,显示网页脚本错误。

A:在js文件中加入下面的处理代码,就可以完美的解决这个问题了。

// 解决IE不能使用getElementsByClassName()方法的问题
// 如果浏览器不能使用document .getElementsByClassName()
    if(!document.getElementsByClassName){
//那么把下面这个值赋予给gc
         document.getElementsByClassName = function(className, element){
//取出文件或者文档中的所有元素
         var children = (element || document).getElementsByTagName(‘*‘);
//新建一个数组
             var elements = new Array();
//遍历所有的元素
               for (var i=0; i<children.length; i++){
//把元素赋值给child,方便取className
                        var child = children[i];
//考虑到了元素有多个className的情况
                        var classNames = child.className.split(‘ ‘);
                        for (var j=0; j<classNames.length; j++){
//如果 className与要取的相同,那么就放进新的数组中
                            if (classNames[j] == className){ 
                                elements.push(child);
                                break;
                            }
                        }
                    }
                    return elements;
                };
            }

 

以上是关于IE浏览器下getElementsByClassName()属性的使用的主要内容,如果未能解决你的问题,请参考以下文章

怎么规定CSS的属性仅在IE下生效?在非IE浏览器下不生效

兼容模式下ie9和ie10显示样式在不兼容模式下为啥不加载css样式?

浏览器兼容问题——IE7/IE/8下背景图片不显示

在IE需要保留在版本9的情况下,怎么浏览只支持IE10以上的网页

Windows10专业版下IE浏览器无法上网怎么办?

IE浏览器兼容问题(下)——IE6的常见问题