Metodo jQuery noConflict()

Come utilizzare jQuery e altri framework contemporaneamente nella pagina?

jQuery e altri framework JavaScript

Come hai già scoperto, jQuery utilizza il simbolo $ come abbreviazione di jQuery.

Cosa fare se altri framework JavaScript utilizzano anche il simbolo $ come abbreviazione?

Altri framework JavaScript includono: MooTools, Backbone, Sammy, Cappuccino, Knockout, JavaScript MVC, Google Web Toolkit, Google Closure, Ember, Batman e Ext JS.

Alcuni framework utilizzano anche il simbolo $ come abbreviazione (come jQuery), se si utilizzano due framework diversi che utilizzano la stessa abbreviazione, potrebbe causare l'interruzione dell'esecuzione dello script.

Il team di jQuery ha considerato questo problema e ha implementato il metodo noConflict().

Metodo jQuery noConflict()

Il metodo noConflict() rilascia il controllo sull'identificatore $, permettendo ad altri script di utilizzarlo.

Esempio

Certo, è ancora possibile utilizzare l'abbreviazione completa per usare jQuery:

$.noConflict();
jQuery(document).ready(function(){
  jQuery("button").click(function(){
    jQuery("p").text("jQuery è ancora in esecuzione!");
  });
});

Provatelo personalmente

Esempio

È anche possibile creare le proprie abbreviazioni. Il metodo noConflict() restituisce un riferimento a jQuery, che può essere memorizzato in una variabile per utilizzo futuro. Ecco un esempio:

var jq = $.noConflict();
jq(document).ready(function(){
  jq("button").click(function(){
    jq("p").text("jQuery è ancora in esecuzione!");
  });
});

Provatelo personalmente

Esempio

Se il blocco di codice jQuery utilizza la abbreviazione $ e non si desidera cambiare questa scorciatoia, è possibile passare il simbolo $ come variabile al metodo ready. In questo modo è possibile utilizzare il simbolo $ all'interno della funzione - mentre all'esterno della funzione, è necessario utilizzare ancora "jQuery":

$.noConflict();
jQuery(document).ready(function($){
  $("button").click(function(){
    $("p").text("jQuery è ancora in esecuzione!");
  });
});

Provatelo personalmente

Manuale di riferimento jQuery Core

Per una panoramica completa dei metodi jQuery Core, visitate il nostro Manuale di riferimento jQuery Core.