有没有办法检查对象的特定类是否在数组中 - 我用对象的'id'完成了它,但不能用'class'做 - 用'id'它是这样的:
var arr = [ 'error', 'button', 'items', 'basket' ];
if (jQuery.inArray($(this).attr('id'), arr) == -1) {
// do something here
}
Run Code Online (Sandbox Code Playgroud)
我想有类似下面的东西,这是行不通的:
var arr = [ 'error', 'button', 'items', 'basket' ];
if (jQuery.inArray($(this).attr('class'), arr) == -1) {
// do something here
}
Run Code Online (Sandbox Code Playgroud)
任何的想法?
只是为了向您展示我正在使用它:
var arr = [ 'error', 'button', 'items', 'basket' ];
$.each(data, function(k, v) {
if (jQuery.inArray($(this).attr('class'), arr) == -1 && $('.' + k).length > 0) {
$('.' + k).fadeOut(100, function() {
$(this).hide().html(v).fadeIn(100);
});
}
});
Run Code Online (Sandbox Code Playgroud)
$(this).is(
[ 'error', 'button', 'items', 'basket' ]
.map(function(cls) {return "." + cls;})
.join(',')
);
Run Code Online (Sandbox Code Playgroud)
$(this).is(selector) 检查给定对象或对象集是否与选择器匹配. [ 'error', 'button', 'items', 'basket' ].<class_name>我们使用map将点添加到每个类名array.map(function(cls) {return "." + cls;}) array.join(',')结果是$(this).is('.error, .button, .items, .basket'),如果$(this)定义了任何类,则匹配哪些匹配.