diff --git a/src/event.js b/src/event.js index 9164bd67..b8de9386 100644 --- a/src/event.js +++ b/src/event.js @@ -1027,15 +1027,10 @@ jQuery.each(["live", "die"], function( i, name ) { return this; } - if ( jQuery.isFunction( data ) || data === false ) { - fn = data; + if ( data === false || jQuery.isFunction( data ) ) { + fn = data || returnFalse; data = undefined; - } - - if ( fn === false ) { - fn = returnFalse; - } - + } types = (types || "").split(" "); diff --git a/test/unit/event.js b/test/unit/event.js index 48a97a1d..0b4b364b 100644 --- a/test/unit/event.js +++ b/test/unit/event.js @@ -567,6 +567,7 @@ test("live(name, false), die(name, false)", function() { jQuery("#ap").die("click", false); jQuery("#ap").trigger("click"); equals( main, 1, "Verify that the trigger happened correctly." ); + jQuery("#main").die("click"); }); test("delegate(selector, name, false), undelegate(selector, name, false)", function() { @@ -587,6 +588,7 @@ test("delegate(selector, name, false), undelegate(selector, name, false)", funct jQuery("#ap").undelegate("#groups", "click", false); jQuery("#groups").trigger("click"); equals( main, 1, "Verify that the trigger happened correctly." ); + jQuery("#main").undelegate("#ap", "click"); }); test("bind()/trigger()/unbind() on plain object", function() {