互換性レコード-classプロパティ

784 ワード

getAttributeがclass属性を取得した場合、IE 6、IE 7のパラメータはclassName、IE 7+と現代の遊覧器はclass
すべての遊覧機DOMElementにはclassName属性があり、IEの各バージョンで属性class値を返す文字列が良好に表現されている.
またhtml 5のDOMElementにはclassListの属性があり、DOMTokenListのタイプのオブジェクトを返し、classを操作する方法がたくさんある.
一般的なhasClassメソッドを書くことができます
function hasClass(n, cls) {
            var clss;
            //           IE  classList(>=IE10)
            if (useClassList) {
                clss = n.classList
                return clss.contains(cls);
            }
            // className IE        
            clss = n.className || n.getAttribute('class');
            clss = ' ' + clss + ' ';
            return clss.indexOf(cls) !== -1;
}