X-Git-Url: http://git.asbjorn.it/?a=blobdiff_plain;ds=sidebyside;f=src%2Fevent.js;h=26f23409c65dede33f4867263ff961fc0deedb43;hb=813886a4dff0cf4be62fea51c3ae8be9ef88e12a;hp=c2d74763cb673ea133c2ffa92074b92012a71942;hpb=542099a278e79dce38e814e7e7b448a1b73df82f;p=jquery.git diff --git a/src/event.js b/src/event.js index c2d7476..26f2340 100644 --- a/src/event.js +++ b/src/event.js @@ -569,9 +569,11 @@ jQuery.each({ }); // submit delegation +if ( !jQuery.support.submitBubbles ) { + jQuery.event.special.submit = { setup: function( data, namespaces, fn ) { - if ( !jQuery.support.submitBubbles && this.nodeName.toLowerCase() !== "form" ) { + if ( this.nodeName.toLowerCase() !== "form" ) { jQuery.event.add(this, "click.specialSubmit." + fn.guid, function( e ) { var elem = e.target, type = elem.type; @@ -588,8 +590,6 @@ jQuery.event.special.submit = { } }); } - - return false; }, remove: function( namespaces, fn ) { @@ -598,7 +598,11 @@ jQuery.event.special.submit = { } }; +} + // change delegation, happens here so we have bind. +if ( !jQuery.support.changeBubbles ) { + jQuery.event.special.change = { filters: { click: function( e ) { @@ -647,27 +651,24 @@ jQuery.event.special.change = { } }, setup: function( data, namespaces, fn ) { - // return false if we bubble - if ( !jQuery.support.changeBubbles ) { - for ( var type in changeFilters ) { - jQuery.event.add( this, type + ".specialChange." + fn.guid, changeFilters[type] ); - } + for ( var type in changeFilters ) { + jQuery.event.add( this, type + ".specialChange." + fn.guid, changeFilters[type] ); } // always want to listen for change for trigger return false; }, remove: function( namespaces, fn ) { - if ( !jQuery.support.changeBubbles ) { - for ( var type in changeFilters ) { - jQuery.event.remove( this, type + ".specialChange" + (fn ? "."+fn.guid : ""), changeFilters[type] ); - } + for ( var type in changeFilters ) { + jQuery.event.remove( this, type + ".specialChange" + (fn ? "."+fn.guid : ""), changeFilters[type] ); } } }; var changeFilters = jQuery.event.special.change.filters; +} + function trigger( type, elem, args ) { args[0].type = type; return jQuery.event.handle.apply( elem, args );