jQuery — metoda noConflict()


Co zrobić, jeśli chcesz używać innych frameworków na swoich stronach, jednocześnie korzystając z jQuery?


jQuery i inne frameworki JavaScript

Jak już wiesz; jQuery używa $znaku jako skrótu do jQuery.

Istnieje wiele innych popularnych frameworków JavaScript, takich jak: Angular, Backbone, Ember, Knockout i inne.

Co jeśli inne frameworki JavaScript również używają znaku $ jako skrótu?

Jeśli dwa różne frameworki używają tego samego skrótu, jeden z nich może przestać działać.

Zespół jQuery już o tym pomyślał i wdrożył noConflict()metodę.


Metoda jQuery noConflict()

Metoda noConflict()zwalnia blokadę identyfikatora skrótu $, aby inne skrypty mogły z niego korzystać.

Oczywiście nadal możesz używać jQuery, po prostu wpisując pełną nazwę zamiast skrótu:

Przykład

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

Możesz także bardzo łatwo stworzyć własny skrót. Metoda noConflict()zwraca referencję do jQuery, którą można zapisać w zmiennej do późniejszego wykorzystania. Oto przykład:

Przykład

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

Jeżeli posiadasz blok kodu jQuery, który używa $skrótu i ​​nie chcesz tego wszystkiego zmieniać, możesz przekazać $login jako parametr do metody ready. To pozwala na dostęp do jQuery za pomocą $, wewnątrz tej funkcji - poza nią będziesz musiał użyć "jQuery":

Przykład

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

jQuery Różne odniesienia

Aby uzyskać pełny przegląd wszystkich metod jQuery Misc, przejdź do naszego jQuery Misc Reference .