Merge branch 'master' of github.com:jquery/jquery
authorjeresig <jeresig@gmail.com>
Sat, 27 Feb 2010 14:02:18 +0000 (09:02 -0500)
committerjeresig <jeresig@gmail.com>
Sat, 27 Feb 2010 14:02:18 +0000 (09:02 -0500)
1  2 
src/event.js

diff --combined src/event.js
@@@ -25,10 -25,6 +25,10 @@@ jQuery.event = 
                        elem = window;
                }
  
 +              if ( handler === false ) {
 +                      handler = returnFalse;
 +              }
 +
                var handleObjIn, handleObj;
  
                if ( handler.handler ) {
                        return;
                }
  
 +              if ( handler === false ) {
 +                      handler = returnFalse;
 +              }
 +
                var ret, type, fn, i = 0, all, namespaces, namespace, special, eventType, handleObj, origType,
                        elemData = jQuery.data( elem ),
                        events = elemData && elemData.events;
                        namespace = new RegExp("(^|\\.)" + namespaces.slice(0).sort().join("\\.(?:.*\\.)?") + "(\\.|$)");
                }
  
-               var events = jQuery.data(this, "events"), handlers = events[ event.type ];
+               events = jQuery.data(this, "events");
+               handlers = (events || {})[ event.type ];
  
                if ( events && handlers ) {
                        // Clone the handlers to prevent manipulation
@@@ -838,7 -831,7 +839,7 @@@ jQuery.each(["bind", "one"], function( 
                        return this;
                }
                
 -              if ( jQuery.isFunction( data ) ) {
 +              if ( jQuery.isFunction( data ) || data === false ) {
                        fn = data;
                        data = undefined;
                }
@@@ -1079,15 -1072,8 +1080,15 @@@ jQuery.each( ("blur focus focusin focus
        "change select submit keydown keypress keyup error").split(" "), function( i, name ) {
  
        // Handle event binding
 -      jQuery.fn[ name ] = function( fn ) {
 -              return fn ? this.bind( name, fn ) : this.trigger( name );
 +      jQuery.fn[ name ] = function( data, fn ) {
 +              if ( fn == undefined ) {
 +                      fn = data;
 +                      data = null;
 +              }
 +
 +              return arguments.length > 0 ?
 +                      this.bind( name, data, fn ) :
 +                      this.trigger( name );
        };
  
        if ( jQuery.attrFn ) {