Skip to main content

Bug Tracker

Side navigation

#12541 closed bug (fixed)

Opened September 14, 2012 06:38PM UTC

Closed September 19, 2012 03:32PM UTC

1.8.0 and 1.8.1: Double :not() selector fails in IE6/7

Reported by: erwin@darcoury.nl Owned by: gibson042
Priority: blocker Milestone: 1.8.2
Component: selector Version: 1.8.0
Keywords: Cc:
Blocked by: Blocking:
Description

$('div.list').find( 'dd:not(:last-child), li:not(:last-child)' );

Above code fails to take the second :not() into account; it does not filter out the last instance of li. 1.7.2 is OK.

http://jsfiddle.net/Ztcfq/1/

Attachments (0)
Change History (6)

Changed September 14, 2012 06:44PM UTC by erwin@darcoury.nl comment:1

Fails in IE8 as well.

Changed September 14, 2012 07:37PM UTC by gibson042 comment:2

component: unfiledselector
owner: → erwin@darcoury.nl
status: newpending

What behavior are you expecting here? It looks to me like we are correctly returning (within the specified div.list context) all dds that are not the last child of their parents and all lis that are are not the last child of ''their'' parent.

Changed September 14, 2012 07:44PM UTC by erwin@darcoury.nl comment:3

status: pendingnew

That is what I expect as well, but in IE6/7/8, it returns all dds without the last child, but ''all'' lis including the last child.

Changed September 15, 2012 12:49PM UTC by gibson042 comment:4

milestone: None1.8.2
owner: erwin@darcoury.nlgibson042
priority: undecidedblocker
status: newassigned

I see.

Changed September 15, 2012 09:05PM UTC by gibson042 comment:5

Changed September 19, 2012 03:32PM UTC by Timmy Willison comment:6

resolution: → fixed
status: assignedclosed

Update Sizzle: Fixes #12303, #12474, #12523, #12526, #12541.

Changeset: f7980d4d68e76147e6a9ddd7b30d379ddce7f222