元のJSでgetElementsByClassNameブラウザの互換性の問題を解決(複数のクラス名に適用)
2037 ワード
//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()関数で得られた結果は、いずれも配列であり、適宜使用します.