jQuery-besök - not() metod

Exempel

Ta bort avsnitt med id "selected" från kollektionen med alla avsnitt:

$("p").not("#selected")

Prova själv

Definition och användning

Ta bort element från matchande elementkollektionen.

语法 1

Grammatik 3Grammatik 1.not(
) Parameter
Grammatik 1 selector

Strängvärde som innehåller ett väljaruttryck för att matcha element.

Grammatik 3Grammatik 2.not(
) Parameter
Grammatik 2 element

En eller flera DOM-element som behöver tas bort från matchgruppen.

Grammatik 3Beskrivning.not(
) Parameter
Beskrivning function(index)

Användning av funktionen för att kontrollera varje element i uppsättningen. this är det aktuella DOM-elementet.

Detaljerad förklaring

Tänk på följande sida med en enkel lista:

<ul>
  <li>list item 1</li>
  <li>list item 2</li>
  <li>list item 3</li>
  <li>list item 4</li>
  <li>list item 5</li>
</ul>

Vi kan applicera denna metod på en lista av listobjekt:

$('li').not(':even').css('background-color', 'red');

Prova själv

Resultatet av denna anrop är att element 2 och 4 sätts till en röd bakgrund, eftersom de inte matchar väljaren (kom ihåg att :even och :odd använder index baserat på 0).

Ta bort specifika element

Den andra versionen av .not() metoden tillåter oss att ta bort element från matchgruppen, förutsatt att vi redan har hittat dessa element på annat sätt. Till exempel, tänk dig att en lista redan har applicerat id till en av projekten:

<ul>
  <li>list item 1</li>
  <li>list item 2</li>
  <li id="notli">list item 3</li>
  <li>list item 4</li>
  <li>list item 5</li>
</ul>

Vi kan använda den ursprungliga JavaScript-funktionen getElementById() för att läsa tredje listelementet och sedan ta bort det från jQuery-objektet:

$('li').not(document.getElementById('notli')).css('background-color', 'red');

Prova själv

Detta uttrycket ändrar bakgrundsfärgen för element 1, 2, 3 och 5. Vi kan använda en enklare jQuery-expression för att uppnå samma resultat, men denna teknik kan vara mycket användbar när andra bibliotek erbjuder referenser till rena DOM-noder.

För jQuery 1.4 kan .not() metoden använda en funktion som parameter, liknande .filter() metoden. Element som funktionen returnerar true för kommer att uteslutas från filtergruppen; alla andra element kommer att inkluderas.