原生js判断某个元素是否有指定的class名的几种方法

3,486 阅读1分钟

如果不考虑兼容IE10以下的话,可以用HTML5中的classList API,非常方便:

var node = document.getElementById('demo');
if(node.classList.contains('test')){
    console.log('包含 test 这个class');
}

兼容的方式是采用className和getAttribute('class')方法:

if (node.getAttribute('class')) {  // 存在class属性
    // 方式1
    if (node.getAttribute('class').indexOf('test') > -1) {
        console.log('包含 test 这个class');   
    }
     
    // 方式2
    if (node.className.indexOf('test') > -1) {
        console.log('包含 test 这个class');   
    }
}