Bug Tracker

Opened 10 years ago

Closed 10 years ago

#4161 closed bug (duplicate)

Event handlers not preserved when appending to multiple elements

Reported by: dalangalma Owned by: john
Priority: major Milestone: 1.3.2
Component: core Version: 1.3.1
Keywords: Cc:
Blocked by: Blocking:

Description

In jQuery 1.3.1, if you create a new element, attach an event handler to it, and then append it to multiple elements, all but the first copy of the element lose their event handlers. This worked in 1.2.6.

There's a demo at http://brh.numbera.com/experiments/browserdemos/jquery-1.3.1-append-handlers.html - I've attached a copy to this ticket.

Attachments (1)

jquery-1.3.1-append-handlers.html (1.4 KB) - added by dalangalma 10 years ago.
Demo of the bug

Download all attachments as: .zip

Change History (4)

Changed 10 years ago by dalangalma

Demo of the bug

comment:1 Changed 10 years ago by dmethvin

Owner: set to john

This does seem like a regression. The 1.3.1 domManip is using the DOM cloneNode method which doesn't carry over events. In 1.2.6 it used the jQuery clone method which does.

comment:2 Changed 10 years ago by maranomynet

There's an other important detail about this bug:

In 1.2.6 .append() leaves the source/prototype element intact when appending to multiple target elements...

In 1.3.1 the source/prototype element is always *moved* to the first target element...

See demo attached to ticket #4174

IMO this needs to be fixed as well

comment:3 Changed 10 years ago by john

Resolution: duplicate
Status: newclosed

Duplicate of #3966.

Note: See TracTickets for help on using tickets.