aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/event.js4
-rw-r--r--test/unit/event.js5
2 files changed, 6 insertions, 3 deletions
diff --git a/src/event.js b/src/event.js
index 1bbf1348d..ab7567081 100644
--- a/src/event.js
+++ b/src/event.js
@@ -282,11 +282,11 @@ jQuery.event = {
handle.elem = null;
}
- delete elemData[ eventKey ];
+ delete elemData.events;
delete elemData.handle;
if ( typeof elemData === "function" ) {
- jQuery.removeData( elem, "events" );
+ jQuery.removeData( elem, eventKey );
} else if ( jQuery.isEmptyObject( elemData ) ) {
jQuery.removeData( elem );
diff --git a/test/unit/event.js b/test/unit/event.js
index b37b253a8..f2e981ec0 100644
--- a/test/unit/event.js
+++ b/test/unit/event.js
@@ -443,7 +443,7 @@ test("bind(name, false), unbind(name, false)", function() {
});
test("bind()/trigger()/unbind() on plain object", function() {
- expect( 5 );
+ expect( 7 );
var obj = {};
@@ -459,6 +459,7 @@ test("bind()/trigger()/unbind() on plain object", function() {
var events = jQuery(obj).data("__events__");
ok( events, "Object has events bound." );
+ equals( obj.events, undefined, "Events object on plain objects is not events" );
equals( typeof events, "function", "'events' expando is a function on plain objects." );
equals( obj.test, undefined, "Make sure that test event is not on the plain object." );
equals( obj.handle, undefined, "Make sure that the event handler is not on the plain object." );
@@ -473,6 +474,8 @@ test("bind()/trigger()/unbind() on plain object", function() {
// Make sure it doesn't complain when no events are found
jQuery(obj).unbind("test");
+
+ equals( obj.__events__, undefined, "Make sure events object is removed" );
});
test("unbind(type)", function() {