Update CommonJS module registration to check to see if define is a function instead...
[jquery.git] / src / core.js
index c11133f..4da1212 100644 (file)
@@ -215,7 +215,7 @@ jQuery.fn = jQuery.prototype = {
                        this.toArray() :
 
                        // Return just the object
-                       ( num < 0 ? this.slice(num)[ 0 ] : this[ num ] );
+                       ( num < 0 ? this[ this.length + num ] : this[ num ] );
        },
 
        // Take an array of elements and push it onto the stack
@@ -532,12 +532,6 @@ jQuery.extend({
        },
 
        isEmptyObject: function( obj ) {
-
-    // Fixes #7413 Check to see if obj passes isPlainObject
-    if ( !jQuery.isPlainObject( obj ) ) {
-      return false;
-    }
-       
                for ( var name in obj ) {
                        return false;
                }
@@ -739,6 +733,7 @@ jQuery.extend({
                        }
                }
 
+               // Flatten any nested arrays
                return ret.concat.apply( [], ret );
        },
 
@@ -891,6 +886,11 @@ function doScrollCheck() {
        jQuery.ready();
 }
 
+// Expose jQuery as an Asynchronous Module
+if ( typeof define === "function" ) {
+       define( "jquery", [], function () { return jQuery; } );
+}
+
 // Expose jQuery to the global object
 return (window.jQuery = window.$ = jQuery);