yzm 3215 İleri web programlama...javascript Çerçeveleri ve jquery giriş 2 bu bölümde;...

37
YZM 3215 İleri Web Programlama Yrd. Doç. Dr. Deniz KILINÇ Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği 1

Upload: others

Post on 31-Jul-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

YZM 3215

İleri Web Programlama

Yrd. Doç. Dr. Deniz KILINÇ

Celal Bayar Üniversitesi

Hasan Ferdi Turgutlu Teknoloji Fakültesi

Yazılım Mühendisliği

1

Page 2: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

BÖLÜM - 2

Javascript Çerçeveleri ve jQuery Giriş

2

Bu bölümde;

Javascript çerçeveleri

Jquery I. Bölümo jQuery Temelleri

o Selektörler

o Komut Zincirleme

o DOM Okuma ve Yazma

ile ilgili konular anlatılacaktır.

Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 3: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

Javascript Çerçeveleri

• Javascript çerçeveleri, RIA (Rich Internet

Application) geliştirmede kullanılan ve temel

Javascript DOM işleri için daha kolay veya

fonksiyonel yöntemleri sunan javascript

kütüphaneleridir.

• Javascript çerçeveleri HTML veya Javascript

DOM'dan ayrı bir teknoloji değillerdir.

• Javascript çerçeveleri, HTML, CSS ve Javascript

DOM araçları, RIA geliştirme için daha mantıklı,

kolay ve kullanılabilir yapıda oluştururlar.

• Bu yapıları kullanarak tipik RIA geliştirme

hızlandırılabilirCelal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 4: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

Javascript Çerçeveleri (devam…)

• Javascript çerçeveleri genellikle bir javascript

kütüphanesi olarak geliştirilip tek veya birkaç .js

dosyası olarak yayınlanırlar.

• Javascript çerçevesinden yararlanmak için,

– İlgili js dosyası web sayfanız ile birlikte

sunucunuzdan indirilebilir veya

– Javascript çerçevesinin HTML script tagındaki "src"

komutunu kullanarak direkt olarak bağlanabilir.

Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 5: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

Javascript Çerçeveleri (devam…)

• Javascript çerçeveleri tipik olarak standart

javascript DOM işleri için farklı araçlar

sunar:

– DOM taranması ve DOM'da navigasyon

– DOM hiyerarşi güncelleştirilmesi

– Javascript olay işlemleri ve animasyon

– AJAX iletişim

– Nesne tabanlı programlama (OOP) ile ilgili

işler

Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 6: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

Javascript Çerçeveleri (devam…)

– jQuery

• jQuery en popüler js-çerçevelerinden biridir

• Temiz dil yapıları, kolay DOM taranması, efektif olay işlem ve

animasyon araçları ve AJAX; standart UI kütüphanesi (jquery.ui)

• Web uygulama hızlandıran araç koleksiyonu

– MooTools

• OOP tabanlı programlamaya odaklayan js platformu

• Zengin modüller, nesne ve nesne devralma araçları

• Javascript için OOP odaklı web uygulama geliştirme çerçevesi

– Prototype

• OOP tabanlı programlamaya odaklayan js platformu

• Zengin nesneler ve nesne devralma araçları

• Genişletilmiş DOM, standart DOM elemanlarına yeni metotlar

tanımlanmış

Page 7: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

jQuery GİRİŞ

7Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 8: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

jQuery

–Cross-platform javascript kütüphanesidir.

– 2006'da John Resig tarafından tasarlanmıştır.

– Şu anda en popüler js çerçevesi

8Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 9: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

jQuery – Top 100K Sites

9

https://www.similartech.com/categories/javascript

Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 10: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

jQuery – Top 100K Sites

10

https://www.similartech.com/categories/javascript

Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 11: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

• jQuery Özellikleri:

– Kolay DOM elemanlarının taranması

– DOMda navigasyon ve DOM elemanları güncelleştirme

– CSS selektörler kullanarak DOM taranması

– DOM olay işleme

– Animasyon

– AJAX

– JSON analizi

– Plug-in'leri kullanarak genişletilmesi

– Çarpaz tarayıcı uyumluluk

– Standart UI kütüphanesi

11

jQuery (devam…)

Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 12: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

• jQuery Ana Kısımları:

– Selektörler

– DOM güncelleştirme

– DOM tarama

– Animasyon efektleri

– AJAX işlemeleri

– UI aletleri

12

jQuery (devam…)

Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 13: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

• İndirme

– Özel kopyası, web sitesinden sunulduğu, (http://jquery.com/download/)

– jQuery CDN<script src="//code.jquery.com/jquery-1.11.0.min.js"></script>

– Google CDN<script

src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>

– Microsoft CDN<script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.11.0.min.js"></script>

13

jQuery (devam…)

Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 14: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

jQuery Temelleri

• Tipik jQuery komutunun yapısı aşağıdaki

gibidir:

$(selectör).eylem(parametreler)

o$ jQuery’ye erişim işareti

oSelektör HTML DOM elemanlarının altkümesini

belirtilen bir ifade

oEylem ilgili DOM elemanlarının üzerinde

yapılacak işlem

14Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 15: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

jQuery Temelleri (devam…)

• Bazı jQuery örnekleri:

– $(this).hide() – aktif elemanı saklar.

– $("p").hide() – tüm <p> elemanlarını saklar.

– $(".test").hide() – sınıfı="test" olan tüm elemanları

saklar.

– $("#test").hide() – id = "test" olan tüm elemanları

saklar.

15Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 16: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

jQuery Temelleri (devam…)

• Document Ready: Dokümanın yüklendiğini

garanti eder.

16Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

$(document).ready(function(){

// jQuery Metotları buraya...

});

$(function(){

// jQuery Metotları buraya...

});

1

2

……………………………………………………

Page 17: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

jQuery Temelleri (devam…)

• ÖRNEK 1: Aşağıdaki kodları test edelim

17Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

$("a").click(function () { $(this).hide(); });

$("p").hide();

$("#test").hide();

Page 18: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

jQuery Temelleri (devam…)

• ÖRNEK 1:

18Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 19: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

• jQuery Selektörleri:– $("a"), CSS tag selektörü (tüm ilgili taglar)

– $(".blue"), CSS sınıf selektörü (tüm "class=blue" elemanları)

– $("#menu"), CSS id selektörü ("id=menü" elemanı)

– $("a.blue"), CSS tag+sınıf selektörü (tüm "class=blue" alan "a" elemanları)

– $("ul li a"), CSS iç-içe selektörleri (bir ul içindeki bir li elemanının içinde olan a elemanları)

– CSS hierarşi selektörleri• $("p:first-child") – ana elemanının ilk çocuğu olan p elemanları

• $("a:first-of-type") – ana elemanının a çocuk-elemanları arasında ilk olan çocuk a elemanı

• $("a:last-child") - ana elemanının son çocuğu olan p elemanları

19

jQuery Selektörleri

Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 20: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

• Özel Selektörler:– $("*"), tüm elemanlar

– $(this), şuanki eleman (olay işlemcileri içinde kullanılır)

– $("tr:even"), bir tabloda çift satırlar

– $("tr:odd"), bir tabloda tek satırlar

– $("p:contains('Hello')"), 'Hello' metni içeren p elemanları

– $("li:has(.altmenu)"), .altmenu elemanı içeren li elemanları

– $("p:hidden"), saklanmış p elemanları

– $(":input"), tüm "input" elemanları (form)

– $(":button"), tüm "button" ve "input button" elemanları (form)

– $(":checkbox"), tüm "checkbox" elemanları (form)

– $(":selected"), tüm tıklanmış select veya radiobutton elemanları (form)

– $(":checked"), tüm tıklanmış checkbox elemanları (form)

– $(":enabled"), tüm "enabled" elemanları (form)

20

jQuery Selektörleri(devam…)

Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 21: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

• Özel Selektörler:– $("[href]"), href özelliğini tanımlayan elemanlar

– $("a[href='değer']"), href='değer' alan a elemanları

– $("[href$='.jpg']"), '.jpg' ile biten href özelliğini alan elemanlar

– $("[title|='yarın']"), 'yarın'e eşit veya 'yarın-' ile başlayan "title" özelliğini alan elemanlar

– $("[title^='bugun']"), 'bugun' ile başlayan title özelliğini alan elemanlar

– $("[title*='hello']"), 'hello' metni içeren title özelliğini alan elemanlar

21

jQuery Selektörleri(devam…)

Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 22: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

• ÖRNEK 2: Id’leri btn1 ve btn2 olan butonlar

<p> etiketli elemanları saklama ve gösterme

işlevlerini gerçekleştireceklerdir.

22

jQuery Selektörleri(devam…)

Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 23: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

• ÖRNEK 2: Id’leri btn1 ve btn2 olan butonlar

<p> etiketli elemanları saklama ve gösterme

işlevlerini gerçekleştireceklerdir.

23

jQuery Selektörleri(devam…)

Page 24: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

• ÖRNEK 3: İçerisinde ‘Gizli’ kelimesi geçen

paragraf elemanlarını gizleyen buton işlevini

gerçekleştirelim.

24

jQuery Selektörleri(devam…)

Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 25: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

• ÖRNEK 3: İçerisinde ‘Gizli’ kelimesi geçen

paragraf elemanlarını gizleyen buton işlevini

gerçekleştirelim.

25

jQuery Selektörleri(devam…)

Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 26: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

• Site ziyaretçisinin web sitesinde yaptığı tüm

aksiyonlara olay (event) denir.

26

jQuery Olaylar

Mouse Events Keyboard Events Form Events Document

click keypress submit load

dblclick keydown change resize

mouseenter keyup focus scroll

mouseleave blur unload

Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 27: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

• ÖRNEK 4: Bir <p> elemanı için click(),

dblclick(), mouseenter(), mouseleave() olaylarını

tanımlayınız.

27

jQuery Olaylar (devam…)

Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 28: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

• ÖRNEK 4: Bir <p> elemanı için click(), dblclick(),

mouseenter(), mouseleave() olaylarını tanımlayınız.

28

jQuery Olaylar (devam…)

Page 29: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

• jQuery komutlarının sonucu tipik olarak aynı

jQuery nesnesidir.

• Bu nedenle jQuery komutları tipik olarak

zincirlenebilir (chaining).

29

jQuery Komut Zincirleme

Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 30: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

• ÖRNEK 5: Bir <p> elemanı için click(),

dblclick(), mouseenter(), mouseleave() olaylarını

zincirleme olarak tanımlayınız.

30

jQuery Komut Zincirleme

Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 31: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

• DOM okuma ve yazma işlemleri için 4 tane basit

ancak kullanışlı komut bulunmaktadır.

1. $(selektör).text(""): Elemanın metni elde etmek

veya değiştirmek

2. $(selektör).html(""): Elemanın html'i elde etmek

veya değiştirmek

3. $(selektör).val(""): Elemanın value özelliğini elde

etmek veya değiştirmek

4. $(selektör).attr(isim): Elemanın "isim"li özelliğini

elde etmek veya değiştirmek

31

jQuery DOM Get ve Set

Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 32: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

• ÖRNEK 6: Bir <p> elemanı içerisindeki hem text

hem de html bilgisini ekrana gösteriniz.

32Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

jQuery DOM Get

Page 33: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

• ÖRNEK 6: Bir <p> elemanı içerisindeki hem text

hem de html bilgisini ekrana gösteriniz.

33Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

jQuery DOM Get

Page 34: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

• ÖRNEK 7: İki adet <p> elemanından ilkinin text

içeriğini ikincisinin html içeriğini değiştiriniz.

34Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

jQuery DOM Set

Page 35: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

• ÖRNEK 7: İki adet <p> elemanından ilkinin text

içeriğini ikincisinin html içeriğini değiştiriniz.

35Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

jQuery DOM Set

Page 36: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

Yararlanılan Kaynaklar

36

• http://www.w3c.org

• http://www.w3schools.com/jquery

• Ders Notları, Yrd. Doç. Dr. Yuriy Mishchenko

Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama

Page 37: YZM 3215 İleri Web Programlama...Javascript Çerçeveleri ve jQuery Giriş 2 Bu bölümde; Javascript çerçeveleri Jquery I. Bölüm o jQuery Temelleri o Selektörler o Komut Zincirleme

37

İYİ ÇALIŞMALAR…

Yrd. Doç. Dr. Deniz KILINÇ

[email protected]

[email protected]

Celal Bayar Üniversitesi - YZM 3215 İleri Web Programlama