Jak mogę napisać Jquery.No konflikt z następującym skryptem Jquery. Używam tego Jquery do przesuwania obrazów na mojej stronie. Jak korzystać z opcji Bez konfliktu z następującym skryptem?
<script type="text/javascript">
$(document).ready(function () {
$("#waterwheel-carousel-default").waterwheelCarousel();
$("#waterwheel-carousel-higharch").waterwheelCarousel({
startingWaveSeparation: -90,
waveSeparationFactor: .7,
centerOffset: 10,
startingItemSeparation: 120,
itemSeparationFactor: .9,
itemDecreaseFactor: .75
});
});
</script>
Odpowiedzi:
2 dla odpowiedzi № 1Zostało to wyjaśnione w dokumentacji:
<script type="text/javascript" src="other_lib.js"></script>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$.noConflict();
jQuery(document).ready(function($) {
// Code that uses jQuery"s $ can follow here.
});
// Code that uses other library"s $ can follow here.
</script>
http://api.jquery.com/jQuery.noConflict/
1 dla odpowiedzi nr 2
noConflict jest zwykle używany, gdy potrzebujesz użyć innej biblioteki z jquery, więc dwa nie kolidują. Z dokumentów jQuery:
Wiele bibliotek JavaScript używa $ jako funkcji lubnazwa zmiennej, po prostu tak jak robi jQuery. W przypadku jQuery $ jest tylko aliasem dla jQuery, więc cała funkcjonalność jest dostępna bez użycia $. Jeśli musimy użyć inna biblioteka JavaScript obok jQuery, możemy zwrócić kontrolę nad Wróć do drugiej biblioteki, wywołując $ .noConflict ():
Więc jeśli nie używasz innej biblioteki z jquery, nie sądzę, że będziesz potrzebował noconflict.
0 dla odpowiedzi № 3
cóż, powinieneś zrobić kolejny "skrót" do jquery:
var $j = jQuery.noConflict();
po tym zastąpić wszystkie $
znaki z nazwą zmiennej, która wskazuje teraz na jquery ($j
).
Innym podejściem byłoby napisanie kodu jquery do funkcji i przekazanie referencji jquery ($
) jako argument:
(function($){
// your jquery code goes here
// alert($ === jQuery);
})(jQuery.noConflict());
// outside the scope, $ is not jquery anymore
// alert($ === jQuery);