Kategoriler
Bilgisayar ve İnternet

2 javascript’in Çakışması Önlemek Kesin Çözüm – jquery

Bugün jquery ile yaşadığım bir sorun üzerine bu konuyu anlatıyım dedim, araştırıp araştırıp bir gavurun sitesinde bularak bu sorunu aştım. Şimdi sorunun neden kaynaklandığına gelelim. Sayfamızda iki farklı jquery sürümünü eklemiş isek ve sayfanın farklı bölgelerinde kodlarını yazdıysak genelde bu problem ile karşılaşıyoruz. Fonksiyonda kullandığımız $ fonksiyonları çakışıyor diye saçma bir tabiri var. Mesela birinde $ kullandıysak diğerinde $x veya $ yanına farklı bri harf kullanmamız gerekiyormuş yani jqueryde genelde biz fonksiyon kullanırken $ işareti ile kullanırız ancak sayfaya birden fazla sürüm ilave edince sorun diğer sürümün fonksiyon kullanımını farklı yapmamız gerekiyormuş böyle değişik saçma bir şey diyebilirim. Neyse bunun için kolay bir yol var tüm $ olanları $x diye değiştirmemize gerek yok aslında şimdi ona geçelim

 jQuery.noConflict()

Bu fonksiyonu kullanacağız. Yapacağımız şey var ile değişken tanımlayacağız örnek kod
<script type="text/javascript">
var jQueryCalis = $.noConflict(true);
</script>
var dedikten sonra herhangi bir isim yazıyoruz istediğinizi yazabilirsiniz normal değişken tanımlama yani ondan sonra gelelim devamına. Çalışmayan kodunuzu aşağıda belirttiğim çalışmayan kod yazan yere yapıştırın bunun içine $.(document) kısmıda dahil yani tüm kısımı içine yapıştırın.
(function($) {
<!-- TÜM KODLAR BURAYA $.(document de dahil olmak üzere) -->
})(jQueryCalis);
Yani örnek vericek olursak bu şekilde
<script>
var jQueryCalis = $.noConflict(true);
(function($) {
$(document).ready(function(){
$( "body" ).append("Mesela yani..!");
});
})(jQueryCalis);
</script>
Yani noluyo tüm $ leri tanımladığımız fonksiyonla değiştirmektense onu parametre haline getirip oto değişmesini sağlıyoruz olayımız bu.
Umarım probleminiz çözülür, selametle kalın.

Yazar Ömer Moğultay

Kim ki bize anlatır kendini? Hatırlatmıyorsa bir kişi kendini unuttu diye kınamamalı hiçbir kimseyi.