JQuery

Eyl 08, 2013

JQuery, uygulama geliştiricisi John Resig tarafından yaratılan etkili bir JavaScript kütüphanesidir ve ücretsiz, açık kaynak kodlu, çift lisanslı bir dağıtımdır. JQuery kütüphanesi kullanılan projelerin MIT (Massachusetts Institute of Technology) veya GPL (General Public License) Sürüm 2 lisanslarından biri ile lisanslanması önerilmektedir. Önerilen lisanslardan herhangi birinin kullanılmaması durumunda ise kütüphane ile birlikte gelen telif hakkı (copyright) başlığının değiştirilmemesi gerekmektedir. Kütüphanenin yapım (production) ve geliştirme (development) olmak üzere iki farklı dağıtımı mevcuttur. Bunlardan production dağıtımı, sıkıştırılmış sürümdür; kütüphaneyi yalnızca kullanacaklar içindir. JQuery geliştiricileri sıkıştırılmamış olan development sürümünü indirebilirler. Kütüphane üzerinde herhangi bir değişiklik yapılmayacaksa production sürümünün indirilmesi tavsiye edilir. JQuery, tek bir JavaScript dosyasından oluşmaktadır. Bu JavaScript dosyası <script type="text/javascript" src="jquery.js"></script> satırıyla src (source-kaynak) etiketine dosyanın fiziksel yolu yazılarak eklenebilmektedir.

JQuery’nin Özellikleri

  • Tarayıcılar arası geçişlilik özelliği (cross - browser)
    JQuery kütüphanesi, en çok kullanılan Web tarayıcılar da dahil olmak üzere birçok tarayıcıda sorunsuz çalışabilmektedir. Internet Explorer 6.0+, Firefox 2.0+, Safari 3.0+, Opera 10.6+, Google Chrome 8+ ile aktif olarak kullanılabilmektedir.

  • Kullanım Kolaylığı
    JQuery kütüphanesi, daha az kodla daha çok iş yapılması sloganıyla ortaya çıkmıştır. Yapılmak istenen iş genellikle tek bir satırla haledilebilmektedir.

    JQuery’nin basit kullanımına örnekler:

    Seçici Açıklama
     $('div')  Web sayfasındaki bütün div etiketlerini yakalar.
     $('div.header')  class (sınıf) özniteliği “header” olan etiketleri yakalar.
     $('#test')  Id’si (Identification – Kimlik) test olan elementleri yakalar.
     $('p.test')  class (sınıf) özniteliği “test” olan tüm elementlerini yakalar.
     $('p #test:first')  Test id’li ilk elementini yakalar.
     $('.test')  class özniteliği “test” olan tüm elementleri yakalar.
  • Zincirlenebilirlik (Chainability)
    JQuery kütüphanesine ait bir başka faydalı özellik ise JQuery’nin Sihiri (The Magic of JQuery) olarak adlandırılan zincirlenebilirlik (chaninability) özelliğidir. Bu özellik sayesinde birden fazla metot tek satırda zincirlenerek çağırılabilmektedir. Böylece kodlar oldukça kısalmaktadır. Örneğin aşağıdaki kod parçası ile sayfa üzerindeki tüm bağlantılardan class (sınıf) özniteliği “tıkla” olanların üzerine tıklandığında “Bu siteden ayrılıyorsunuz” mesajı gönderilir.
  •  $("a")
       .filter(".tıkla")
         .click(function(){
           alert("Bu siteden ayrılıyorsunuz.”)
         })
       .end();

  • Eklentiler (Plugins)
    JQuery kütüphanesi yayınlanan eklentilerle genişletilebilir özelliktedir. Web sayfaları, birçok eklentiyle oldukça zengin bir hale getirilebilir. Özelleştirilmiş eklentiler sayesinde müzik çalarlar, fotoğraf galerileri, sekme (tab) menüler Web uygulamlarına eklenebilir. JQuery eklentileri ile ilgili ayrıntılı bilgi http://plugins.jquery.com adresinden edinilebilir.

  • Ajax (Asynchronous JavaScript and XML – Asenkron JavaScript ve XML) ve JQuery
    JQuery  kütüphanesi, Web sayfalarının tamamının sunucuya gitmeden sadece bir kısmının işlenmesinde kullanılan Ajax için de geniş bir metot seti sunmaktadır.

  • JQuery-UI
    JQuery-UI (User Interface – Kullanıcı Arayüzü)
    , JQuery ve JavaScript kütüphanelerinin üzerinde bir etkileşim kütüphanesidir. Oldukça interaktif Web uygulamaları geliştirmek için kullanılır. JQuery-UI, görsel efektler, eklentiler ve kullanıcı dostu tasarıma olanak sağlarken aynı zamanda Web standartlarına ve olay – güdümlü mimariye odaklanır. Tüm eklentiler Internet Explorer 6.0+, Firefox 2.0+, Safari 3.0+, Opera 10.6+, Google Chrome 8+ ile uyumlu olarak kullanılabilmektedir. JQuery – UI, sürükle bırak (drag and drop), yeniden boyutlandırma (resizing), sıralama (sorting) gibi karmaşık kontrollerin yapılmasını sağlarken aynı zamanda kaydırıcı (slider), sekme (tab), tarih seçme (datepicker) gibi özelleşmiş UI kontrollerinin kullanımına da olanak tanır. Ayrıca JQuery-UI, CSS (Cascading Style Sheet – Basamaklı Stil Şablonları) paketleri de sunmaktadır böylelikle istenilen tema seçilerek, JQuery-UI kişiselleştirilebilmektedir.