X-Git-Url: http://git.asbjorn.it/?a=blobdiff_plain;ds=sidebyside;f=src%2Fjquery%2Fjquery.js;h=9561ea9de4337e07cd775bf5d484ee56eb18977f;hb=476cbd2f1afd39e32feb350a732877c18f9f7715;hp=65f842381b32fcf61bb1d93fbc97accd0f9cb537;hpb=897fbfe89c90de5f20a3eed2aeb187c625cfb43d;p=jquery.git diff --git a/src/jquery/jquery.js b/src/jquery/jquery.js index 65f8423..9561ea9 100644 --- a/src/jquery/jquery.js +++ b/src/jquery/jquery.js @@ -2271,7 +2271,7 @@ jQuery.extend({ handle: function(event) { if ( typeof jQuery == "undefined" ) return false; - event = jQuery.event.fix( event ); + event = event || jQuery.event.fix( window.event ); // If no correct event was found, fail if ( !event ) return false; @@ -2295,19 +2295,16 @@ jQuery.extend({ }, fix: function(event) { - if(jQuery.browser.msie) { - event = window.event; + if ( event ) { event.preventDefault = function() { this.returnValue = false; }; + event.stopPropagation = function() { this.cancelBubble = true; }; - event.target = event.srcElement; - } else if(jQuery.browser.safari && event.target.nodeType == 3) { - event = jQuery.extend({}, event); - event.target = event.target.parentNode; } + return event; } @@ -3399,29 +3396,15 @@ jQuery.macros = { * } ) * @desc Stop only an event from bubbling by using the stopPropagation method. * - * @example $("form").bind( "submit", function(event) { - * // do something after submit - * }, 1 ) - * @desc Executes the function only on the first submit event and removes it afterwards - * * @name bind * @type jQuery * @param String type An event type * @param Function fn A function to bind to the event on each of the set of matched elements - * @param Number amount An optional amount of times to execute the bound function * @cat Events */ - bind: function( type, fn, amount ) { + bind: function( type, fn ) { if ( fn.constructor == String ) fn = new Function("e", ( !fn.indexOf(".") ? "jQuery(this)" : "return " ) + fn); - if( amount > 0 ) { - var element = this, handler = fn, count = 0; - fn = function(e) { - if( ++count >= amount ) - jQuery(element).unbind(type, fn); - handler.apply(element, [e]); - }; - } jQuery.event.add( this, type, fn ); },