#8748 closed bug (duplicate)
live('click') and live('submit') fire in the wrong order on IE
Reported by: | Owned by: | dmethvin | |
---|---|---|---|
Priority: | low | Milestone: | 1.next |
Component: | event | Version: | 1.5.1 |
Keywords: | Cc: | ||
Blocked by: | Blocking: |
Description
Live events are fired in the order they are bound and do not respect natural event ordering between click and submit.
Click should always fire before submit so that page logic has a chance to stop the event and prevent a submit. Consider validation as a real-world scenario where the order of event firing is critically important.
jsFiddle to demonstrate bug: http://jsfiddle.net/c9Pny/1/
Notice that in the Bind form, events are ordered correctly.
Please disregard the duplicate submit events when pressing enter in the Live form. I believe that is bug #7444 and is not the subject of this ticket.
Other reference: #7922 fixed the fact that live('click') was not firing at all. This ticket, however, is to point out that they are firing in the wrong order.
Change History (8)
comment:1 Changed 12 years ago by
Component: | unfiled → event |
---|---|
Priority: | undecided → low |
Resolution: | → duplicate |
Status: | new → closed |
comment:3 Changed 12 years ago by
Milestone: | 1.next → 1.6 |
---|---|
Resolution: | duplicate |
Status: | closed → reopened |
I am pretty sure this is a different case. The change
event has to be synthesized in IE for some cases and for those times the synthesized event fires when the piggybacked event runs. I'll take this ticket and see if we can do something about the event order.
comment:4 Changed 12 years ago by
Owner: | set to dmethvin |
---|---|
Status: | reopened → assigned |
comment:5 Changed 12 years ago by
@dmethvin thanks for picking this one up!
@rwaldron This is definitely not a dupe. I realize that expecting complete control over event ordering is madness. However, the DOM level 2 event spec states that certain events (namely, click) have default actions which should be cancelable with preventDefault (section 1.2.4). If submit fires before click, I cannot prevent it.
Currently, this works fine in all browsers except IE. I think this is just a leaky abstraction from the contortions necessary to implement live on IE.
comment:6 Changed 12 years ago by
Milestone: | 1.6 → 1.next |
---|
comment:7 Changed 12 years ago by
Resolution: | → duplicate |
---|---|
Status: | assigned → closed |
Grouping under one ticket.
See: #8568 & #3781