getAttribute获得class属性时,IE6,IE7的传参是className,IE7+和现代游览器都是class
所有游览器DOMElement均有的className属性,其在IE各版本下的均表现良好返回属性class值的字符串
此外html5中DOMElement有个classList属性,它返回一个类型为DOMTokenList的对象,它其中有很多有用操作class的方法.
可以写一个通用的hasClass方法
function hasClass(n, cls) { var clss; // 现代游览器均支持classList if (n.classList) { clss = n.classList return clss.contains(cls); // className在IE各版本下表现一致 } else if(n.className) { clss = ' ' + n.className + ' '; // 保底方法 } else { clss = n.getAttribute('class'); } clss = ' ' + clss + ' '; return clss.indexOf(cls) !== -1; }
时间: 2024-12-17 22:46:11