jQueryのクラスセレクターではない質問する

jQueryのクラスセレクターではない質問する

特定のクラスを持つ要素を選択しない簡単なセレクター式はありますか?

<div class="first-foo" />
<div class="first-moo" />
<div class="first-koo" />
<div class="first-bar second-foo" />

最初の3つのdivを取得したいので試してみました

$(div[class^="first-"][class!="first-bar"])

しかし、最後のdivにはfirst-bar以上のものが含まれているため、すべてを受け取ります。このような式でプレースホルダーを使用する方法はありますか?次のようなものです

$(div[class^="first-"][class!="first-bar*"]) // doesn't seem to work

他に役立つセレクターはありますか?

ベストアンサー1

必要なのは:not()セレクタ:

$('div[class^="first-"]:not(.first-bar)')

あるいは、.not()方法:

$('div[class^="first-"]').not('.first-bar');

おすすめ記事