#8165 closed bug (fixed)
.live('click', handler) fires on disabled buttons with child elements in Chrome
Reported by: | ms7821 | Owned by: | dmethvin |
---|---|---|---|
Priority: | high | Milestone: | 1.7.2 |
Component: | event | Version: | 1.5 |
Keywords: | Cc: | danheberden | |
Blocked by: | Blocking: |
Description
It's possible to receive events for a disabled <button> element as well as <input type="button">:
http://jsfiddle.net/Fz2F3/ (jQuery 1.4.4) http://jsfiddle.net/Fz2F3/1/ (jQuery 1.5)
IE fires click for all of them, passing the button as the target and currentTarget. This was fixed in jQuery 1.5 in http://bugs.jquery.com/ticket/6911.
Chrome fires only for the <button> with a child element, passing that as the target. However, currentTarget is set to the button, so changing target.disabled to currentTarget.disabled should extend the fix to include Chrome.
See also the first comment on http://forum.jquery.com/topic/live-inconsistency-with-disabled-buttons.
Change History (8)
comment:1 Changed 13 years ago by
Resolution: | → duplicate |
---|---|
Status: | new → closed |
comment:2 Changed 13 years ago by
comment:3 Changed 13 years ago by
Cc: | danheberden added |
---|---|
Component: | unfiled → event |
Milestone: | 1.next → 1.5.1 |
comment:4 Changed 13 years ago by
Priority: | undecided → high |
---|
comment:5 Changed 12 years ago by
Milestone: | 1.5.1 |
---|---|
Resolution: | duplicate |
Status: | closed → reopened |
This bug still exists in 1.7.1, per the test case. It does look like changing to currentTarget will solve the problem.
comment:6 Changed 12 years ago by
Milestone: | → 1.7.2 |
---|---|
Owner: | set to dmethvin |
Status: | reopened → assigned |
comment:7 Changed 12 years ago by
Looks like it regressed in 1.7, probably due to #9393, which removed the specific liveHandler cases.
comment:8 Changed 12 years ago by
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Fix #8165: Ignore events bubbling through disabled elements.
Although #6911 fixed the case where event.target was disabled, it missed the case where the target was a sub-element.
Changeset: 8d9025ca50603e5404c6b50f7fa6c87046ee24c1
Duplicate of #6911.