0
function hasClass( elem, cls ) {
var reClass = new RegExp(' ' + cls + ' ');
return reClass.test(' ' + elem.className + ' ');
}

我是javascript的新学习者,我从一本书中看到了上述功能。但我不知道它是什么意思?希望有人可以向我解释。非常感谢。

4

2 回答 2

1

它只是测试给定元素是否包含给定类。这对于具有多个类的元素很有用(旧浏览器默认不支持)。

考虑一个像<div id='test' class="button login"></div>. 如果你将它传递给函数,你会得到如下:

function hasClass( elem, cls ) {

    // var reClass = new RegExp(' login ');
    var reClass = new RegExp(' ' + cls + ' ');

    // return reClass.test(' button login ');  (ie, true)
    return reClass.test(' ' + elem.className + ' ');
}
console.log(hasClass(document.getElementById('test'), 'login'));

演示在这里

于 2012-10-19T04:56:25.220 回答
0

它检查元素的类属性是否包含指定的类(cls)

于 2012-10-19T04:56:33.493 回答