getElementsByClassName互換性処理

1429 ワード

getElementsByClassNameは、同じクラス名を持つ要素の配列を返すHTML 5に追加されたメソッドです.この方法は非常に有用であり,従来のラベルgetElementsByTagNameを取得する方法によってクラスを取得することを解決した.ただし、IE 8と以下は互換性がありません.不足を補うために互換性処理をします.
if(!document.getElementsByClassName){
    document.getElementsByClassName =  function(className,elem){
       var children = (elem||document).getElementsByTagName("*");
       var elems = [];
       for(var i=0; ivar child = children[i];
          var classNames = child.className.split(" ");
          for(var j=0; jif(classNames[j] == className){
                     elems.push(child);
                     break;
              }
          }
       }
    return elems;
   }
}