Made 'jQuery' unrollable via .noConflict(true) and instances of new Function() have been converted to eval(function(){}) in order to handle jQuery name changes. (Bug #1393)
This commit is contained in:
parent
e06b7447c2
commit
fc3e180465
18
src/jquery/jquery.js
vendored
18
src/jquery/jquery.js
vendored
|
@ -19,6 +19,11 @@
|
|||
* @param jQuery|Element|Array<Element> c context
|
||||
* @cat Core
|
||||
*/
|
||||
|
||||
// Map over jQuery in case of overwrite
|
||||
if ( typeof jQuery != "undefined" )
|
||||
var _jQuery = jQuery;
|
||||
|
||||
var jQuery = window.jQuery = function(a,c) {
|
||||
// If the context is global, return a new object
|
||||
if ( window == this || !this.init )
|
||||
|
@ -29,7 +34,7 @@ var jQuery = window.jQuery = function(a,c) {
|
|||
|
||||
// Map over the $ in case of overwrite
|
||||
if ( typeof $ != "undefined" )
|
||||
jQuery._$ = $;
|
||||
var _$ = $;
|
||||
|
||||
// Map the jQuery namespace to the '$' one
|
||||
window.$ = jQuery;
|
||||
|
@ -1345,9 +1350,10 @@ jQuery.extend({
|
|||
* @type undefined
|
||||
* @cat Core
|
||||
*/
|
||||
noConflict: function() {
|
||||
if ( jQuery._$ )
|
||||
$ = jQuery._$;
|
||||
noConflict: function(deep) {
|
||||
window.$ = _$;
|
||||
if ( deep )
|
||||
window.jQuery = _jQuery;
|
||||
return jQuery;
|
||||
},
|
||||
|
||||
|
@ -1851,7 +1857,7 @@ jQuery.extend({
|
|||
// If a string is passed in for the function, make a function
|
||||
// for it (a handy shortcut)
|
||||
if ( typeof fn == "string" )
|
||||
fn = new Function("a","i","return " + fn);
|
||||
fn = eval("function(a,i){return " + fn + "}");
|
||||
|
||||
var result = [];
|
||||
|
||||
|
@ -1905,7 +1911,7 @@ jQuery.extend({
|
|||
// If a string is passed in for the function, make a function
|
||||
// for it (a handy shortcut)
|
||||
if ( typeof fn == "string" )
|
||||
fn = new Function("a","return " + fn);
|
||||
fn = eval("function(a){return " + fn + "}");
|
||||
|
||||
var result = [];
|
||||
|
||||
|
|
Loading…
Reference in a new issue