2016-12-05 5 views
1

と逆の特性と逆クラスセレクタを組み合わせる:は、私はこのjQueryのコードを持っている既存のセレクタ

$("#Filter ul input:checked").each(function() { 
    if (!$(this).prop("disabled") && !$(this).hasClass("ignoreInput")) { 

これは、ただ1つのセレクタに書き込むことができますか?今、私はifステートメントでテストするには多すぎる要素を取り入れています。

オールセレクタを書くのではなく、.find(selector)を使用する方が良いですか?

$(document.body).find("#Filter ul ...) 

答えて

4

あなたはこのように、属性セレクタと一緒に:not()の組み合わせを使用することができます:

$("#Filter ul input:checked:not([disabled],.ignoreInput)").each(function() { 
    // your logic here 
}); 

は(セレクタ).findを使用することも、より良いです代わりに、1つのセレクタですべてを書きます?

パフォーマンスの向上はほとんどありません。

+0

無効のsquere bracketの構文を説明できますか? – juFo

+1

@juFoこれは、属性セレクタのシンタックスです –

+2

@juFoこれはすべて文書の中にあります:https://api.jquery.com/has-attribute-selector/ –

関連する問題