[javascript] jQuery에서 클래스 선택기가 아님

특정 클래스의 요소를 선택하지 않는 간단한 선택기 표현식이 있습니까?

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

난 그냥 첫 세 div를 얻고 싶어

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

그러나 이것은 마지막 div에 첫 번째 막대 이상이 포함되어 있기 때문에 모든 것을받습니다. 그러한 표현에 자리 표시자를 사용하는 방법이 있습니까? 그런 것

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

도움이 될만한 다른 선택 도구가 있습니까?



답변

:not()선택기 가 필요합니다 .

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

또는 대안 적으로, .not()방법 :

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


답변

:not필터 선택기를 사용할 수 있습니다 .

$('foo:not(".someClass")')

또는 not()방법 :

$('foo').not(".someClass")

더 많은 정보:


답변