X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=src%2Fevent.js;h=f36139fb5f87798b52e5c9ae5918b5db34b78277;hb=eb496f757a1eebef14eb5a1fdd971cc553f3540b;hp=9abf8387834fd7d47f6b30cff8561f6029f00f6b;hpb=e9d5947b4abbc052046585227892da0adcd56caf;p=jquery.git diff --git a/src/event.js b/src/event.js index 9abf838..f36139f 100644 --- a/src/event.js +++ b/src/event.js @@ -57,6 +57,12 @@ jQuery.event = { handle = jQuery.data( elem, "handle", eventHandle ); } + // If no handle is found then we must be trying to bind to one of the + // banned noData elements + if ( !handle ) { + return; + } + // Add elem as a property of the handle function // This is to prevent a memory leak with non-native // event in IE. @@ -604,6 +610,9 @@ jQuery.event.special.submit = { return trigger( "submit", this, arguments ); } }); + + } else { + return false; } }, @@ -752,12 +761,10 @@ jQuery.each(["bind", "one"], function( i, name ) { for ( var key in type ) { this[ name ](key, data, type[key], fn); } - return this; } if ( jQuery.isFunction( data ) ) { - thisObject = fn; fn = data; data = undefined; } @@ -767,17 +774,11 @@ jQuery.each(["bind", "one"], function( i, name ) { return fn.apply( this, arguments ); }) : fn; - 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() { + return type === "unload" && name !== "one" ? + this.one( type, data, fn ) : + this.each(function() { jQuery.event.add( this, type, handler, data ); }); - } - - return this; }; }); @@ -791,20 +792,14 @@ jQuery.fn.extend({ return this; } - // Deprecated: Please don't expect an empty jQuery set to bind to document - (!this.selector && !this.context ? jQuery(document) : this).each(function() { + return this.each(function() { jQuery.event.remove( this, type, fn ); }); - - return this; }, trigger: function( type, data ) { - // Deprecated: Please don't expect an empty jQuery set to bind to document - (!this.selector && !this.context ? jQuery(document) : this).each(function() { + return this.each(function() { jQuery.event.trigger( type, data, this ); }); - - return this; }, triggerHandler: function( type, data ) { @@ -920,7 +915,7 @@ function liveConvert( type, selector ) { return ["live", type, selector.replace(/\./g, "`").replace(/ /g, "&")].join("."); } -jQuery.each( ("blur focus load resize scroll unload click dblclick " + +jQuery.each( ("blur focus focusin focusout load resize scroll unload click dblclick " + "mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " + "change select submit keydown keypress keyup error").split(" "), function( i, name ) { @@ -929,8 +924,8 @@ jQuery.each( ("blur focus load resize scroll unload click dblclick " + return fn ? this.bind( name, fn ) : this.trigger( name ); }; - if ( jQuery.fnAttr ) { - jQuery.fnAttr[ name ] = true; + if ( jQuery.attrFn ) { + jQuery.attrFn[ name ] = true; } });