Bug Tracker

Opened 4 years ago

Closed 4 years ago

#12203 closed bug (fixed)

.undelegate() with no arguments unbinds all handlers from the parent element

Reported by: adavis@… Owned by:
Priority: blocker Milestone: 1.8
Component: event Version: 1.7.2
Keywords: Cc:
Blocked by: Blocking:


This used to work in 1.6. undelegate() has a zero-argument version that should just undelegate all handlers from the parent element. What this does now is undelegate all handlers AS WELL as all bound event handlers on the parent.

See the following jsFiddle for an example: http://jsfiddle.net/xWju3/

Clicking on the div should display "Parent Clicked", and clicking on the "Click Me" button should display "Child Clicked". If you then click on the "Undelegate Click" button, neither the "Click Me" button nor the parent div will register their clicks anymore.

Change History (2)

comment:1 Changed 4 years ago by dmethvin

  • Component changed from unfiled to event
  • Milestone changed from None to 1.8
  • Priority changed from undecided to blocker
  • Status changed from new to open

Yep, we'll get a fix in for this.

comment:2 Changed 4 years ago by Dave Methvin

  • Resolution set to fixed
  • Status changed from open to closed

Fix #12203. .undelegate() should not remove direcly bound events.

Changeset: 1d8bf0a2b57fd429c600aab5b150b2a04b87e451

Note: See TracTickets for help on using tickets.