17 Kasım 2015 Salı

Jquery Kontroller Üzerinde Değişiklikler Yapmak

Web projelerinizde kontrollerinizin daha güzel veya tepkilerin daha belirgin olmasını istiyorsanız kontrollerinize görsel olarak birşeyler eklemeniz en iyi yöntemlerden bir tanesi olabilir. Mesela bir alana ve butona basıldığında renginin değişmesi gibi işlemler yapabilirsiniz.

Şimdi bu söylediklerimize kod tarafında bakalım. Hem görsel hemde kod ile daha iyi anlaşılır olacağına inanıyorum.

Ben her zamanki gibi kodlarımı notepad++'da yazacağım. Tabi emmet yazımda yazdıklarımı kullanarak daha hızlı bir kodlama yeteneğine sahip olacağım. Hadi başlayalım.

jquery

Kodumuzu yazdık ve kısayol tuşumuza basıyoruz. Karşımızda html sayfamızın en sade hali geliyor.

jquery1

Ne kadar güzel değil mi :) Şimdi ben dil seçeneğini ve title ları değiştiricem. Bunları yazının ilerliyen bölümlerinde farklı görürseniz şaşırmayın ;)

Sayfamıza bir div içine 5 tane textbox koyalım.

jquery2

Yine emmet ve sonuç ;

jquery3

Jquery'yi de referans verelim ve sonrasında kodlamaya geçelim.

<head>
<meta charset="UTF-8">
<title>Jquery Gorsel</title>
<script src="jquery.js"></script>
</head>

İlk örnek olarak bir textboxa tıklandığında değerini 2 katına çıkaran ve yazının kalınlığını bold yapan bir event yazalım.

jquery4

jquery9

Peki bir class'ımız olsaydı ve bunu seçtiğimiz inputa eklemek isteseydik ne yapacağız ona bakalım birde. İlk olarak bir tane css class oluşturuyorum.

jquery5

style'ın içinde deneme adında bir css class oluşturdum. Tıklandığı zaman tıklanan alanın arka plan rengini kırmızı yapacak olan bu class'ı da addClass metoduyla eventimin içine ekledim.

jquery6

Classımızı da ekledik. Peki bir css özelliği daha eklemek isteseydik ve tıkladığımız sınıfın üzerindeki css class'ını kaldırmak isteseydik ne yapacaktık onu görelim. İlk olarak 1. ve 2. inputlara deneme css classını ekliyorum. Böylece sayfa ilk açıldığında arka planları kırmızı olarak gelecek. Birde doubleclick eventi yazalım. Bu event de tıklanan inputun css classını kaldırsın.

jquery7

Peki ben bu inputa çift tıklandığında birden fazla css özelliği eklemek istersem ne yapacağım. Bu durumda iki seçeneğiniz var. Bunlardan bir tanesi seçtiğiniz inputa teker teker css metodu ile özellik eklemek. Ör :

$(this).css("özellik1","deger1");
$(this).css("özellik2","deger2");

Ama bu çok performanslı bir yöntem değil çünkü her seferinde bu inputu tekrar tekrar çağırmamız gerekiyor. Bunun yerine benim tercihim inputu tek seferde çağırıp değişikliklerimizi tek seferde yaptırmak.

jquery8


jquery10



Bu yazılık da bu kadar. Bir sonraki yazıda görüşmek üzere...

Hiç yorum yok:

Yorum Gönder