jQuery - De noConflict()-methode


Wat als u andere frameworks op uw pagina's wilt gebruiken, terwijl u nog steeds jQuery gebruikt?


jQuery en andere JavaScript-frameworks

Zoals je al weet; jQuery gebruikt het $teken als een snelkoppeling voor jQuery.

Er zijn veel andere populaire JavaScript-frameworks zoals: Angular, Backbone, Ember, Knockout en meer.

Wat als andere JavaScript-frameworks het $-teken ook als snelkoppeling gebruiken?

Als twee verschillende frameworks dezelfde snelkoppeling gebruiken, kan een van hen niet meer werken.

Het jQuery-team heeft hier al over nagedacht en de noConflict()methode geïmplementeerd.


De jQuery noConflict()-methode

De noConflict()methode geeft de hold op de $ snelkoppelings-ID vrij, zodat andere scripts deze kunnen gebruiken.

Je kunt natuurlijk nog steeds jQuery gebruiken, gewoon door de volledige naam te schrijven in plaats van de snelkoppeling:

Voorbeeld

$.noConflict();
jQuery(document).ready(function(){
  jQuery("button").click(function(){
    jQuery("p").text("jQuery is still working!");
  });
});

Je kunt ook heel gemakkelijk je eigen snelkoppeling maken. De noConflict()methode retourneert een verwijzing naar jQuery, die u in een variabele kunt opslaan voor later gebruik. Hier is een voorbeeld:

Voorbeeld

var jq = $.noConflict();
jq(document).ready(function(){
  jq("button").click(function(){
    jq("p").text("jQuery is still working!");
  });
});

Als je een blok jQuery-code hebt die de $snelkoppeling gebruikt en je wilt niet alles veranderen, dan kun je het $inloggen als parameter doorgeven aan de ready-methode. Dit geeft je toegang tot jQuery met behulp van $, binnen deze functie - daarbuiten moet je "jQuery" gebruiken:

Voorbeeld

$.noConflict();
jQuery(document).ready(function($){
  $("button").click(function(){
    $("p").text("jQuery is still working!");
  });
});

jQuery Overige Referentie

Ga voor een compleet overzicht van alle jQuery Misc-methoden naar onze jQuery Misc Reference .