jquery fx & event: replaced the use of .apply(), where .call() could had been used.
[jquery.git] / src / core.js
index 42fd8d4..a86ef8d 100644 (file)
@@ -24,7 +24,10 @@ var jQuery = window.jQuery = window.$ = function( selector, context ) {
 var quickExpr = /^[^<]*(<(.|\s)+>)[^>]*$|^#(\w+)$/,
 
 // Is it a simple selector
-       isSimple = /^.[^:#\[\.]*$/;
+       isSimple = /^.[^:#\[\.]*$/,
+
+// Will speed up references to undefined, and allows munging its name. 
+       undefined;
 
 jQuery.fn = jQuery.prototype = {
        init: function( selector, context ) {
@@ -337,12 +340,12 @@ jQuery.fn = jQuery.prototype = {
        },
 
        add: function( selector ) {
-               return !selector ? this : this.pushStack( jQuery.merge( 
+               return this.pushStack( jQuery.unique( jQuery.merge( 
                        this.get(),
-                       selector.constructor == String ? 
-                               jQuery( selector ).get() :
-                               selector.length != undefined && (!selector.nodeName || jQuery.nodeName(selector, "form")) ?
-                                       selector : [selector] ) );
+                       typeof selector == 'string' ? 
+                               jQuery( selector ) :
+                               jQuery.makeArray( selector )
+               )));
        },
 
        is: function( selector ) {
@@ -1174,7 +1177,7 @@ jQuery.extend({
                // Go through the array, only saving the items
                // that pass the validator function
                for ( var i = 0, length = elems.length; i < length; i++ )
-                       if ( !inv && callback( elems[ i ], i ) || inv && !callback( elems[ i ], i ) )
+                       if ( !inv != !callback( elems[ i ], i ) )
                                ret.push( elems[ i ] );
 
                return ret;