jQuery noConflict() üsulu

Bildiyiniz kimi, jQuery'ni çağırmaq üçün $ simvolundan istifadə edilir.

Bundan başqa, bir çox javascript framework'lar da vardır: Angular, Backbone, Ember, Knockout və s.
 
Əgər iki müxtəlif framework eyni qısayoldan istifadə edərsə, onlardan biri işini dayandıracaqdır, nəticədə konflikt yaranacaqdır.
 
jQuery bu vəziyyəti də düşünmüş və noConflict() üsulunu yaratmışdır.
 
noConflict() üsulu $ qısayol identifikatorunu azad edir, beləcə digər skriptlər ondan istifadə edə bilirlər.
Bu qısayolun əvəzinə jQuery tam adını yazaraq, jQuery'dən istifadə etmək mümkündür.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>jQuery noConflict</title>
<script type="text/javascript" src="http://xpert.az/engine/classes/js/jquery.js"></script>
<script>
$.noConflict();
jQuery(document).ready(function(){
    jQuery("button").click(function(){
        jQuery("p").text("jQuery işləyir!");
    });
});
</script>
</head>
<body>
<p>Bu mətndir.</p>
<button>jQuery sınağı</button>
</body>
</html>
Nəticəni görmək üçün klikləyin.
 
Həmçinin cox asanlıqla özünüz üçün ayrı qısayol yarada bilərsiniz. noConflict() üsulunun jQuery ilə əlaqəsini başqa dəyişənə əlavə edib, sonradan istifadə etmək mümkündür. Aşağıdakı nümunədə bunu görə bilərsiniz:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>jQuery noConflict</title>
<script type="text/javascript" src="http://xpert.az/engine/classes/js/jquery.js"></script>
<script>
var jq = $.noConflict();
jq(document).ready(function(){
    jq("button").click(function(){
        jq("p").text("jQuery işləyir!");
    });
});
</script>
</head>
<body>
<p>Bu mətndir.</p>
<button>jQuery sınağı</button>
</body>
</html>
Nəticəni görmək üçün klikləyin.
 
Əgər sizin jQuery kodlarınız $ qısayolundan istifadə edilən halda blokdadırsa və siz onu tamamilə dəyişdirmək istəmirsinizsə, ready üsuluna $ simvolunu parametr kimi vermək olar. Bu, funksiyada $ istifadə etməklə jQuery'yə müraciət edə bilmək imkanı yaradır. Ancaq bunu həmin funksiyanın daxilində istifadə etmək olar, kənarda "jQuery" istifadə etmək lazım olacaqdır.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>jQuery noConflict</title>
<script type="text/javascript" src="http://xpert.az/engine/classes/js/jquery.js"></script>
<script>
$.noConflict();
jQuery(document).ready(function($){
    $("button").click(function(){
        $("p").text("jQuery işləyir!");
    });
});
</script>
</head>
<body>
<p>Bu mətndir.</p>
<button>jQuery sınağı</button>
</body>
</html>
Nəticəni görmək üçün klikləyin.
jQuery