元のJSでgetElementsByClassNameブラウザの互換性の問題を解決(複数のクラス名に適用)


//getElementsByClassName      ,            
var getElementsByClassName = function(classname) {
    //       getElementsByClassName,      
    if(document.getElementsByClassName) {
        return document.getElementsByClassName(classname);
    }else{
        //               
        var results=new Array();
        var elems=document.getElementsByTagName("*");
        for (var i=0;iif(elems[i].className){
                // className            
                var elem_classname = new Array();
                elem_classname = elems[i].className.split(' ');
                for (var j=0;j//               ,       results  
                    if (classname == elem_classname[j]) {
                        results.push(elems[i]);
                    }
                }
            }
        }
        return results;
    }
}

注意:
getElementsByClassName()メソッドと上記getElementsByClassName()関数で得られた結果は、いずれも配列であり、適宜使用します.