「jQuery で要素に複数のクラスが指定されているか調べる .hasClasses()」の逆バージョンです。セレクタで指定したクラスがすべて設定されていない場合に true を返し、一つでも設定されていれば false を返します。 jQuery.fn.extend({ hasClasses: function(selector) { if (typeof selecto...
「jQuery で要素に複数のクラスが指定されているか調べる .hasClasses()」の逆バージョンです。セレクタで指定したクラスがすべて設定されていない場合に true を返し、一つでも設定されていれば false を返します。
jQuery.fn.extend({
hasClasses: function(selector) {
if (typeof selector == "string") {
selector = /^\./.test(selector)
? selector.replace(/^\./,"").split(".")
: selector.replace(/^ | $/g,"").split(" ");
}
for (var i = -1,j = 0, n = selector.length; ++i < n;) {
if (this.hasClass(selector[i])) j++;
}
return n === j;
},
notClasses: function(selector) {
return !this.hasClasses(selector);
}
});
このメソッドは、.hasClasses() で調べて、結果を反転して返すだけなので、セレクタの指定方法などは、.hasClasses() の記事を参照してください。
以上です。