Permalink
Browse files

Fix for #923, #1136 and #1233

  • Loading branch information...
1 parent d85a22a commit 2c33101693b172ccc3e87725eb5a7772de6745be @brandonaaron brandonaaron committed May 31, 2007
Showing with 8 additions and 2 deletions.
  1. +8 −2 src/event/event.js
View
@@ -64,15 +64,17 @@ jQuery.event = {
// Remember the function in a global list (for triggering)
if (!this.global[type])
this.global[type] = [];
- this.global[type].push( element );
+ // Only add the element to the global list once
+ if (jQuery.inArray(element, this.global[type]) == -1)
+ this.global[type].push( element );
},
guid: 1,
global: {},
// Detach an event or set of events from an element
remove: function(element, type, handler) {
- var events = element.$events, ret;
+ var events = element.$events, ret, index;
if ( events ) {
// type is actually an event object here
@@ -104,6 +106,10 @@ jQuery.event = {
element.detachEvent("on" + type, element.$handle);
ret = null;
delete events[type];
+
+ // Remove element from the global event type cache
+ while ( this.global[type] && ( (index = jQuery.inArray(element, this.global[type])) >= 0 ) )
+ delete this.global[type][index];
}
}

0 comments on commit 2c33101

Please sign in to comment.