Skip to main content

Bug Tracker

Side navigation

#8473 closed bug (fixed)

Opened March 08, 2011 05:32PM UTC

Closed May 30, 2012 05:47PM UTC

In IE9rc *[tabIndex] select all elements without tabindex also

Reported by: EMVI Owned by: timmywil
Priority: high Milestone: 1.8
Component: selector Version: 1.5.1
Keywords: Cc:
Blocked by: Blocking:
Description

The live events are triggert for all elements, if I remove the "*[tabIndex]" selector the events are only triggert for a and :input elements.

$('a,:input,*[tabIndex]')
    .live('focus',function(){
        this.isFocused = true;
    })
    .live('blur',function(){
        this.isFocused = false;
    })
    .live('mousedown',function(){
        // in webkit some input doesn't get focus on select by mousedown
        if( !this.isFocused ){
            this.focus();
        }
    });
Attachments (0)
Change History (7)

Changed March 08, 2011 09:27PM UTC by addyosmani comment:1

priority: undecidedlow

Thanks for submitting a ticket to the jQuery Bug tracker. Could you please provide us a complete reduced test-case on jsFiddle.net that we can run to evaluate whether this issue is due to jQuery core or a bug in your implementation?

Changed March 09, 2011 10:34AM UTC by EMVI comment:2

Here is the jsFiddle test-case: http://jsfiddle.net/mnqBT/3/

Changed March 10, 2011 03:33PM UTC by dmethvin comment:3

component: unfiledselector
status: newopen

In IE6/7 there's no querySelectorAll and the Sizzle JS engine path is looking at the tabIndex property (which exists on all elements) rather than an explicit attribute.

Changed July 12, 2011 04:56PM UTC by john comment:4

milestone: 1.next1.7
owner: → timmywil
priority: lowblocker
status: openassigned

Confirmed in bug triage.

Changed September 12, 2011 03:32AM UTC by timmywil comment:5

milestone: 1.71.8
priority: blockerhigh

Moving to 1.8. After hooking up Sizzle to jQuery.attr, everything works as we intended. One of the ways we intend it to work, however, prohibits us from fixing this bug until we can deprecate retrieving the tabIndex property with .attr('tabindex'). We currently copy over the propHook to attrHooks in order to mirror previous behavior. When we do deprecate this, it will fix this selector bug and put attr even closer to what it should be, but we will see users complain about getting undefined instead of a number when we do deprecate the tabindex attrHook. I'd like to officially deprecate it in 1.7 and remove it in 1.8 effectively killing this bug. Any objections?

Changed May 30, 2012 05:25PM UTC by timmywil comment:6

#11568 is a duplicate of this ticket.

Changed May 30, 2012 05:47PM UTC by timmywil comment:7

resolution: → fixed
status: assignedclosed

Remove the tabindex attrHook. Fixes #8473

Changeset: 3e2a77c5e882b5fc88bf5469ea00067833a2a059