X-Git-Url: http://git.asbjorn.it/?a=blobdiff_plain;f=src%2Fevent.js;h=9abf8387834fd7d47f6b30cff8561f6029f00f6b;hb=f126f1ce857f11154a8378fc7e0b04a00d803682;hp=97cb0ccabd3e65bc08046fe71cd02e8ae701b9e7;hpb=66975de2d249643779e2b3daad0457f7f5f92508;p=jquery.git diff --git a/src/event.js b/src/event.js index 97cb0cc..9abf838 100644 --- a/src/event.js +++ b/src/event.js @@ -26,7 +26,7 @@ jQuery.event = { // Make sure that the function being executed has a unique ID if ( !handler.guid ) { - handler.guid = this.guid++; + handler.guid = jQuery.guid++; } // if data is passed, bind to handler @@ -114,7 +114,6 @@ jQuery.event = { elem = null; }, - guid: 1, global: {}, // Detach an event or set of events from an element @@ -405,11 +404,17 @@ jQuery.event = { return event; }, + // Deprecated, use jQuery.guid instead + guid: 1E8, + + // Deprecated, use jQuery.proxy instead + proxy: jQuery.proxy, + special: { ready: { // Make sure the ready event is setup setup: jQuery.bindReady, - teardown: function() {} + teardown: jQuery.noop }, live: { @@ -456,24 +461,6 @@ jQuery.event = { } }; -jQuery.event.proxy = jQuery.proxy = function( fn, proxy, thisObject ) { - if ( proxy !== undefined && !jQuery.isFunction( proxy ) ) { - thisObject = proxy; - proxy = undefined; - } - - // FIXME: Should proxy be redefined to be applied with thisObject if defined? - proxy = proxy || function() { - return fn.apply( thisObject !== undefined ? thisObject : this, arguments ); - }; - - // Set the guid of unique handler to the same of original handler, so it can be removed - proxy.guid = fn.guid = fn.guid || proxy.guid || jQuery.event.guid++; - - // So proxy can be declared as an argument - return proxy; -}; - jQuery.Event = function( src ) { // Allow instantiation without the 'new' keyword if ( !this.preventDefault ) { @@ -765,6 +752,7 @@ jQuery.each(["bind", "one"], function( i, name ) { for ( var key in type ) { this[ name ](key, data, type[key], fn); } + return this; } @@ -779,9 +767,17 @@ jQuery.each(["bind", "one"], function( i, name ) { return fn.apply( this, arguments ); }) : fn; - return type === "unload" ? this.one(type, data, handler) : this.each(function() { - jQuery.event.add( this, type, handler, data ); - }); + if ( type === "unload" && name !== "one" ) { + this.one( type, data, fn, thisObject ); + + } else { + // Deprecated: Please don't expect an empty jQuery set to bind to document + (!this.selector && !this.context ? jQuery(document) : this).each(function() { + jQuery.event.add( this, type, handler, data ); + }); + } + + return this; }; }); @@ -795,14 +791,20 @@ jQuery.fn.extend({ return this; } - return this.each(function() { + // Deprecated: Please don't expect an empty jQuery set to bind to document + (!this.selector && !this.context ? jQuery(document) : this).each(function() { jQuery.event.remove( this, type, fn ); }); + + return this; }, trigger: function( type, data ) { - return this.each(function() { + // Deprecated: Please don't expect an empty jQuery set to bind to document + (!this.selector && !this.context ? jQuery(document) : this).each(function() { jQuery.event.trigger( type, data, this ); }); + + return this; }, triggerHandler: function( type, data ) {