Skip to main content

Bug Tracker

Side navigation

#12203 closed bug (fixed)

Opened August 06, 2012 01:49PM UTC

Closed August 08, 2012 12:51AM UTC

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

Reported by: adavis@orchardsoft.com Owned by:
Priority: blocker Milestone: 1.8
Component: event Version: 1.7.2
Keywords: Cc:
Blocked by: Blocking:
Description

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.

Attachments (0)
Change History (2)

Changed August 06, 2012 04:41PM UTC by dmethvin comment:1

component: unfiledevent
milestone: None1.8
priority: undecidedblocker
status: newopen

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

Changed August 08, 2012 12:51AM UTC by Dave Methvin comment:2

resolution: → fixed
status: openclosed

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

Changeset: 1d8bf0a2b57fd429c600aab5b150b2a04b87e451