mirror of
https://github.com/jquery/jquery.git
synced 2025-01-10 18:24:24 +00:00
Didn't get specific enough with the proxy guid, fixes #3787.
This commit is contained in:
parent
d12e8a34e6
commit
ec7baf230d
@ -545,7 +545,7 @@ jQuery.fn.extend({
|
|||||||
|
|
||||||
live: function( type, fn ){
|
live: function( type, fn ){
|
||||||
var proxy = jQuery.event.proxy( fn );
|
var proxy = jQuery.event.proxy( fn );
|
||||||
proxy.guid += this.selector;
|
proxy.guid += this.selector + type;
|
||||||
|
|
||||||
jQuery(document).bind( liveConvert(type, this.selector), this.selector, proxy );
|
jQuery(document).bind( liveConvert(type, this.selector), this.selector, proxy );
|
||||||
|
|
||||||
@ -553,7 +553,7 @@ jQuery.fn.extend({
|
|||||||
},
|
},
|
||||||
|
|
||||||
die: function( type, fn ){
|
die: function( type, fn ){
|
||||||
jQuery(document).unbind( liveConvert(type, this.selector), fn ? { guid: fn.guid + this.selector } : null );
|
jQuery(document).unbind( liveConvert(type, this.selector), fn ? { guid: fn.guid + this.selector + type } : null );
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -474,7 +474,7 @@ test("toggle(Function, Function, ...)", function() {
|
|||||||
});
|
});
|
||||||
|
|
||||||
test(".live()/.die()", function() {
|
test(".live()/.die()", function() {
|
||||||
expect(34);
|
expect(36);
|
||||||
|
|
||||||
var submit = 0, div = 0, livea = 0, liveb = 0;
|
var submit = 0, div = 0, livea = 0, liveb = 0;
|
||||||
|
|
||||||
@ -571,10 +571,23 @@ test(".live()/.die()", function() {
|
|||||||
equals( called, 3, "Verify that only one click occurred." );
|
equals( called, 3, "Verify that only one click occurred." );
|
||||||
|
|
||||||
jQuery("#anchor2").trigger("click");
|
jQuery("#anchor2").trigger("click");
|
||||||
equals( called, 3, "Verify that only one click occurred." );
|
equals( called, 3, "Verify that no click occurred." );
|
||||||
|
|
||||||
|
// Make sure that it still works if the selector is the same,
|
||||||
|
// but the event type is different
|
||||||
|
jQuery("#nothiddendiv").live("foo", callback);
|
||||||
|
|
||||||
// Cleanup
|
// Cleanup
|
||||||
jQuery("#nothiddendiv").die("click", callback);
|
jQuery("#nothiddendiv").die("click", callback);
|
||||||
|
|
||||||
|
jQuery("#nothiddendiv").trigger("click");
|
||||||
|
equals( called, 3, "Verify that no click occurred." );
|
||||||
|
|
||||||
|
jQuery("#nothiddendiv").trigger("foo");
|
||||||
|
equals( called, 4, "Verify that one foo occurred." );
|
||||||
|
|
||||||
|
// Cleanup
|
||||||
|
jQuery("#nothiddendiv").die("foo", callback);
|
||||||
});
|
});
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
Loading…
Reference in New Issue
Block a user