jQuery ve Css işlemleri

ilk önce ile  işlemlerin nasıl yapıldığını inceleyelim. Bakalım jQuery’nin bu konuda bize sağladığı kolaylıklar nelermiş…

jQuery’nin CSS fonksiyonları

jQuery’nin css fonksiyonlarını 3 alt bölüme ayırabiliriz.

  1. Css özellikleri (property)
  2. Css sınıfları (class)
  3. Css konumlandırmaları (offset)

Bu fonksiyonları kullanarak web sayfamızdaki yazıların rengini değiştirebilir, resimlere çerçeve ekleyebilir veya bir elemanın css özelliklerini başka bir elemana aktarabiliriz. Anlatımlara geçmeden önce de yazı boyunca kullanacağımız örneğe gözatalım:

Yukarıdaki kod, örneğimizin HTML kısmını oluşturuyor. HTML etiketi olarak DIV etiketini kullandık. içerisinde de ünlü “lorem ipsum” ifadesi yer alıyor. Ayrıca CLASS özniteliğini de “lorem” olarak belirledik. şimdi de Css ataması yaparak biçimlendirmesini yapalım:

Yukarıdaki css kodları yeterince anlaşılır.. Bu örneğimizin sonucunu görmek için Örnek isimli sayfaya bakabilirsiniz. şimdi ise jQueryâ??ye geri dönelim ;)

1. Css özellikleri (property)

jQuery ile herhangi bir elemanın css özelliğini almak veya değiştirmek amacıyla css() fonksiyonunu kullanıyoruz. ilk önce bir elemanın css özelliği nasıl alınıyor ona bakalım. Mesela yukarıdaki örneğimizin yazı rengi neymiş öğrenelim.

$('div.lorem') ifadesini önceki yazıdan biliyoruz. Web sayfamızdaki hangi eleman üzerinde çalışacaksak onu seçmemizi sağlıyordu. Biz de burada class özniteliği “lorem” olan DIV elemanımızı seçmiş olduk. Daha sonra ise asıl önemli kısım başlıyor. Çünkü css('color') ile seçmiş olduğumuz elemanın yazı rengini alıyoruz. Bu işlemin sonucu bize #555555 olarak geri dönecek. Test etmek için Örnek 1a sayfasına bakabilirsiniz.

şimdi ise css özelliği nasıl değiştiriliyor ona bakalım. Örneğimizin yazı rengi #555555 idi biliyorsunuz. Biz bunu kırmızı renk olan #FF0000 ile değiştirelim.

Hangi css özelliği değiştirilecekse önce onu yazıyoruz, sonra yeni değerini belirliyoruz. Test etmek için Örnek 1b sayfasına bakabilirsiniz.

Ve şimdi birden fazla css özelliği nasıl değiştiriliyor ona bakalım. Örnek 1b’de elemanın yalnızca yazı rengini değiştirmiştik. Peki hem yazı rengini, hem arkaplan rengini, hem de çerçeve rengini değiştirmek isteseydik ne yapacaktık? işte bunu:

Burada dikkat etmeniz gereken en önemli nokta Css özelliklerini javaScript kurallarına göre yazmamız gerektiği… Yani çerçevenin rengini değiştirirken border-color yerine borderColor yazdığıma dikkat edin. Test etmek için Örnek 1c sayfasına bakabilirsiniz.

2. Css sınıfları (class)

jQuery ile elemanlara yeni css sınıfları ekleyebilir, sahip oldukları css sınıflarını silebilir ve bu ekleme-silme işlemini aynı anda yapabiliriz. Css sınıfı eklemek için addClass() fonksiyonunu, silmek için removeClass() fonksiyonunu ve ekleme-silme işlemini aynı anda yapmak içinse toggleClass()fonksiyonu kullanıyoruz. şimdi bu üç fonksiyonu tek tek inceleyelim.

Örnek 1c’de elemanımızın renklerini değiştirmiştik. Fakat o örnekteki yeni renkleri tek tek jQuery’ye biz girmek zorundaydık. Oysaki bunun daha pratik şekli şudur: ilk önce css kodlarımız arasında yeni bir sınıf tanımlayacağız, daha sonrada bu sınıfı jQuery’nin addClass() fonksiyonu ile elemanımıza atayacağız.

ilk önce css kodlarımız arasına kirmizi isimli yeni bir sınıf ekledik.

Daha sonra da elemanımıza kirmizi isimli sınıfı jQuery ile eklemiş olduk. Test etmek için Örnek 2a sayfasına bakabilirsiniz.

şimdi de eklediğimiz bu sınıfı silmeyi öğrenelim. Yapacağımız tek şey removeClass() fonksiyonu kullanarak silmek istediğimiz sınıf ismini belirtmek olacak o kadar.

Test etmek için Örnek 2b sayfasına bakabilirsiniz.

Son olarak da sınıf ekleme ve silme işlemlerini aynı anda nasıl yapıyoruz ona bakalım. YanitoggleClass() fonksiyonu nasıl kullanılıyor inceleyelim.

Böylece sınıf ekleme ve silme işlemleri için ayrı ayrı kod yazmaktan kurtulmuş olduk. Test etmek için Örnek 2c sayfasına bakabilirsiniz.

3. Css konumlandırmaları (offset)

jQuery ile web sayfamızdaki bir elemanın yükseklik ve genişlik değerlerini almak, bu elemanın ekranın hangi noktasında bulunduğunu tespit etmek gerçekten çok kolaydır. Bir elemanın yükseklik değerini height()fonksiyonu ile genişlik değerini ise width() fonksiyonu ile alıyoruz. Bu elemanın konumunu almak içinse offset() fonksiyonunu kullanıyoruz.

ilk önce örneğimizin yükseklik değerini alalım.

Bu işlem sonucunda örneğimizin yükseklik değeri piksel cinsinden bize geri dönecektir. Yine aynı fonksiyon ile yükseklik değerini de istediğimiz gibi değiştirebiliyoruz. Aynen alttaki gibi:

Test etmek için Örnek 3a sayfasına bakabilirsiniz.

şimdi de örneğimizin genişlik değerini alalım. Zaten aynen yükseklik değerini aldığımız gibi alıyoruz.

Ve genişlik değerini değiştirmeyi görelim.

Test etmek için Örnek 3b sayfasına bakabilirsiniz.

Ve son olarak da bir elemanın konumunu alalım. Konum ifadesini açarsak bir elemanın üstten kaç piksel uzaklıkta ve soldan kaç piksel uzaklıkta olduğundan bahsediyorum. şimdi örneğimizin konumunu tespit etmek için kullanacağımız kodları görelim.

Gördüğünüz gibi offset() fonksiyonun kullanımı biraz değişik. ilk önce bu fonksiyonu bir değişkene atıyoruz. Daha sonra da Top ve Left değerlerine atadığımız bu değişken üzerinden ulaşıyoruz. Test etmek için Örnek 3c sayfasına bakabilirsiniz.

Ayrıca bu fonksiyon ile ilgili olarak şunu da eklemek istiyorum. Biliyorsunuz ki Top ve Left bir css özelliğidir. Bir elemanın Top ve Left özelliğini değiştirmek isterseniz Örnek 1câ??dekine benzer bir atama yapmalısınız. Bu atamanın da çalışabilmesi için elemanınız mutlak konumlandırılmış olmasına da dikkat etmelisiniz.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir