jQuery.noConflict()S2C Home « Core & Internals « jQuery.noConflict()
Remove jQuery variables from the global scope.
Shorthand version  $.noConflict()
Description
The jQuery.noConflict() method allows us to free up the jQuery library control of the $ variable and optionally the jQuery namespace as well.
Syntax
| Signature | Description | 
|---|---|
| jQuery.noConflict([removejQueryNamespace]) | Free up the jQuery library control of the $identifier and optionally thejQuerynamespace as well. | 
Parameters
| Parameter | Description | Type | 
|---|---|---|
| removejQueryNamespace | A boolean representing whether to hold  or release the jQuerynamespace.true- release control of thejQuerynamespace.false- keep control of thejQuerynamespace. | Boolean | 
Return
An Object object.
jQuery.noConflict([removejQueryNamespace]) ExampleTop
	Free up the jQuery library control of the $ global variable and optionally the jQuery namespace as well.
There are other JavaScript libraries such as Prototype that also use the $ symbol as a global identifier. To address this conflict and optionally remove the jQuery namespace as well we can use the jQuery.noConflict() Method.
Releasing the $ Global Identifier
	In this example we release the $ global identifier for use by other libraries and addons.
$.noConflict(); // Here we free up the $ global identifier
jQuery(function(){ // Using jQuery Namespace
  jQuery('#btn1').on('click', function(){
    alert('Using jQuery namespace this works');
  });
  $('#btn2').on('click', function(){  // $ global identifier freed so no action
    alert(Never Actioned!);
  });
});
Releasing And Using The $ Global Identifier In Function Scope
	In this example we release the $ global identifier for use by other libraries and addons. We then declare it within function scope where it can be used as normal even though the original $ global 
	   identifier is not available.
How does this work? Because we are passing a function to the jQuery function we are declaring it as a ready event handler. We also declare the $ identifier as a single parameter being passed to
	   the ready event handler. jQuery always passes a reference to the jQuery object as its sole parameter to the ready event handler. Therefore the $ identifier actually refers to jQuery inside of the
		  ready event handler irrespective of any definition outside the function scope.
$.noConflict(); // Here we free up the $ global identifier
jQuery(function($){ // We pass the $ global identifier as a parameter
  $('#btn3').on('click', function(){
    alert('This works using the function scoped $ variable');
  });
});
Releasing the jQuery Namespace
	In this example we release the $ global identifier for use by other libraries and addons. We also set the optional parameter to true to release the jQuery namespace while creating a new one.
var jq = {};
jq.query = jQuery.noConflict(true); // Create new namespace
jq.query(function(){ // Using new namespace
  jq.query('#btn4').on('click', function(){
    alert('Using jq.query namespace this works');
  });
  jQuery('#btn5').on('click', function(){ 
    alert('Using jQuery namespace does not work!'); //jQuery namespace freed so no action
  });
});
 
  
  
  