simPod
simPod

Reputation: 13486

jquery selector - exclude first and second

I want to exclude first and second element from jquery selector. I tried this:

$('p:not(:nth-child(1),:nth-child(2))')

But this only excludes the first element... Thanks

Upvotes: 17

Views: 19755

Answers (5)

Alnitak
Alnitak

Reputation: 339927

This jQuery sequence uses .slice() to discard the first two elements from the $('p') selector:

$('p').slice(2).

see http://jsfiddle.net/alnitak/zWV7Z/

Note that this is not the same as nth-child - the exclusion is based on the whole set of elements found in the first selector, and not on their relative position in the DOM.

Upvotes: 33

Andreas Wong
Andreas Wong

Reputation: 60584

Simply:

$('p:gt(1)')

http://api.jquery.com/gt-selector/

Demo http://jsfiddle.net/NtFYq/1/

As Alnitak has pointed out in the comment, if performance is a concern, you can use his solution of slice

Thanks a lot @Alnitak for pointing that out :)

Upvotes: 19

Faust
Faust

Reputation: 15404

try:

$('p:not(:nth-child(1)),p:not(:nth-child(2))')

Reference: http://www.w3.org/TR/selectors/#negation

from that reference: "The negation pseudo-class, :not(X), is a functional notation taking a simple selector (excluding the negation pseudo-class itself) as an argument...."

Upvotes: 2

Ram
Ram

Reputation: 144699

$('p').not($('p').eq(0), $('p').eq(1)) 

Upvotes: 0

Curtis
Curtis

Reputation: 103388

 $('p').not(":nth-child(1)").not(":nth-child(2)")

-- SEE DEMO --

Upvotes: 5

Related Questions