Opened 14 years ago
Closed 13 years ago
#3980 closed enhancement (invalid)
.live() delegation can be friendly if it mimics the the propagation order
Reported by: | iraebrasil | Owned by: | iraebrasil |
---|---|---|---|
Priority: | low | Milestone: | |
Component: | event | Version: | 1.3.1 |
Keywords: | live, delegation, order | Cc: | |
Blocked by: | Blocking: |
Description
As discussed in the jquery-dev list on the topic: http://groups.google.com/group/jquery-dev/browse_thread/thread/d2900793205d58e/7d034f723cf8588c?hl=en&
I believe that the overhead is minimal in the proposed attached patch.
I've made a test case and also an unit test proposal.
1.3.1: http://irae.pro.br/jquerytests/live.simulate.propagation-patched.html
1.3.1 with patch: http://irae.pro.br/jquerytests/live.simulate.propagation-patched.html
Attachments (1)
Change History (8)
comment:1 Changed 14 years ago by
Changed 14 years ago by
Attachment: | live_ordering.diff added |
---|
sort live handlers to mimic natural propagation
comment:3 Changed 14 years ago by
Resolution: | fixed |
---|---|
Status: | closed → reopened |
The solution does not seem to work if the element uses .live() handler and parent using regular .click() handler. Try the following test case.
// in testD <a> is bound without live $(function(){ $('#testD li').click(function(event){ $(this).css( 'background-color', ($(this).css('background-color')==='rgb(255, 192, 203)'?'red':'rgb(255, 192, 203)') ); }); $('#testD a').live("click", function(event){ $(this).css( 'background-color', ($(this).css('background-color')==='rgb(255, 255, 255)'?'silver':'rgb(255, 255, 255)') ); return false; }); });
comment:4 Changed 14 years ago by
Owner: | brandon deleted |
---|---|
Status: | reopened → new |
comment:5 Changed 13 years ago by
Owner: | set to iraebrasil |
---|---|
Status: | new → pending |
Thanks for taking the time to contribute to the jQuery project! Please provide a reduced jsFiddle test case to help us assess your ticket!
Additionally, test against the jQuery 0 GIT version to ensure the issue still exists. Be Excellent to eachother!
comment:6 Changed 13 years ago by
Milestone: | 1.3.2 |
---|---|
Priority: | major → low |
comment:7 Changed 13 years ago by
Resolution: | → invalid |
---|---|
Status: | pending → closed |
Automatically closed due to 14 days of inactivity.
Ooops,
This is with 1.3.1: http://irae.pro.br/jquerytests/live.simulate.propagation.html
Sorry