]> source.dussan.org Git - jquery.git/commitdiff
Remove the define.amd.jQuery check, close gh-1150.
authorjrburke <jrburke@gmail.com>
Wed, 30 Jan 2013 23:32:19 +0000 (15:32 -0800)
committerDave Methvin <dave.methvin@gmail.com>
Thu, 4 Apr 2013 00:10:42 +0000 (20:10 -0400)
Cherry picked from 2.0 master 34c4e122a333bbfc80bd4f6e79db20f3a73ae5b3

Conflicts:
src/exports.js

src/.jshintrc
src/exports.js
test/data/testinit.js

index 240302db4834f1aac05ada7612fa3e95bfe47a2a..1f094de683e8d4e3b5a5be46245e1b8dc5c3e560 100644 (file)
@@ -18,6 +18,7 @@
 
        "predef": [
                "define",
+               "module",
                "jQuery"
        ]
 }
index 88def50ba37b475d82c158024004dfd49c80e169..365c97bf6d2ab1e7af4c4fbadd6920b758938933 100644 (file)
@@ -1,18 +1,21 @@
-// Expose jQuery to the global object
-window.jQuery = window.$ = jQuery;
+if ( typeof module === "object" && typeof module.exports === "object" ) {
+       // Expose jQuery as module.exports in loaders that implement the Node
+       // module pattern (including browserify). Do not create the global, since
+       // the user will be storing it themselves locally, and globals are frowned
+       // upon in the Node module world.
+       module.exports = jQuery;
+} else {
+       // Otherwise expose jQuery to the global object as usual
+       window.jQuery = window.$ = jQuery;
 
-// Expose jQuery as an AMD module, but only for AMD loaders that
-// understand the issues with loading multiple versions of jQuery
-// in a page that all might call define(). The loader will indicate
-// they have special allowances for multiple jQuery versions by
-// specifying define.amd.jQuery = true. Register as a named module,
-// since jQuery can be concatenated with other files that may use define,
-// but not use a proper concatenation script that understands anonymous
-// AMD modules. A named AMD is safest and most robust way to register.
-// Lowercase jquery is used because AMD module names are derived from
-// file names, and jQuery is normally delivered in a lowercase file name.
-// Do this after creating the global so that if an AMD module wants to call
-// noConflict to hide this version of jQuery, it will work.
-if ( typeof define === "function" && define.amd && define.amd.jQuery ) {
-       define( "jquery", [], function () { return jQuery; } );
+       // Register as a named AMD module, since jQuery can be concatenated with other
+       // files that may use define, but not via a proper concatenation script that
+       // understands anonymous AMD modules. A named AMD is safest and most robust
+       // way to register. Lowercase jquery is used because AMD module names are
+       // derived from file names, and jQuery is normally delivered in a lowercase
+       // file name. Do this after creating the global so that if an AMD module wants
+       // to call noConflict to hide this version of jQuery, it will work.
+       if ( typeof define === "function" && define.amd ) {
+               define( "jquery", [], function () { return jQuery; } );
+       }
 }
index ea940cb6371b43dd0baf7495190175314b5618b4..87edfde29a9235abb9d01437c1f201b5d42a89b9 100644 (file)
@@ -19,9 +19,7 @@ function define( name, dependencies, callback ) {
        amdDefined = callback();
 }
 
-define.amd = {
-       jQuery: true
-};
+define.amd = {};
 
 /**
  * Returns an array of elements with the given IDs