Javascript ile sayfadaki tüm divleri gizleyebilir miyim ?
document.getElementById('div_id').style.display= "none"
tek bir div için çalışıyor. Ben bütün divleri bulup gizlemek istersem nasıl yaparım ?
Bir de bu divler belirli bir sayı serisi ile ID değeri almış. 1,2,3,4 gibi. İşime yarar mı ?
« önceki yazı digg'in en sevdiğiniz özellikleri? |
sonraki yazı » asp+rss |
Yorumlar
tabiki işine yarar javascript ile bir for döndürürsün.
for (var i = 0; i < 10; i++) { document.getElementById('"+i+"').style.display= "none" }
bu işini görmeli
bu arada ben toplam div sayısını 10 olarak planladım .)
| mnc | |
|
|
(0 puan) |
|
| 20 Şubat 2007 00:17 |
ID değerlerinin 1,2,3,4,5... gibi ardışık olması bir işe yaramaz. Aslında yarar ama ilerisi için kullanışlı bir yöntem değildir. Aradan 3 nolu div'i çıkarın bakalım ne olacak :) Ya da divlerin ID değerlerini div_a, div_b, div_c diye string ifadelerle değiştirin.
Yapılacak en güzel iş getElementsByTagName kodunu kullanmak olacaktır. Zaten kendisi herşeyi anlatıyor :) Elemanları etiket ismine göre al demek istiyor :)
Örneğin document.getElementsByTagName('div'); dediğimiz zaman sayfadaki bütün div etiketlerini seçmiş oluruz. Ya da document.getElementsByTagName('img'); dediğimiz zaman sayfadaki tüm resimleri seçmiş oluruz.
İşin felsefî kısmını bırakıp sana gerekli olan kodu yazıyorum. Buyur bakalım :)
function TumDivleriGizle() { var tum_divler = document.getElementsByTagName('div'); var tum_divler_adet = tum_divler.length; var i;
for(i=0; i<tum_divler_adet; i++){
tum_divler[i].style.display = 'none'
}
}
Bu JavaScript fonksiyonunu çalıştırmak için herhangi bir linkin onclick olayına TumDivleriGizle(); eklemen yeterli.
Ya da <a href="javascript:TumDivleriGizle();">Hepsini Gizle</a> yapabilirsin.
Uyarı: Bildirgeç yazıları küçük harfe dönüştürdüğü için verdiğim kodu doğrudan kopyala-yapıştır yapmanız sorun yaratabilir. Doğrusu şudur:

| eburhan | |
|
|
(0 puan) |
|
| 20 Şubat 2007 00:56 |
@eburhan bildirgec büyük harf yazıları css ile ufaltıyor yani kopyalayıp yapıştırdığında arkadaş sorun yaşamayacaktır.
| taninmayan-94903 | |
|
|
(0 puan) |
|
| 21 Şubat 2007 22:38 |
cevaplar için çok teşşekürler, şu şekle getirdim çok güzel oldu :)
function divkapat(islem) {
var tum_divler = document.getElementsByTagName('div');
var tum_divler_adet = tum_divler.length; var i;
for(i=0; i< tum_divler_adet; i++) {
tum_divler[i].style.display = islem
}
}
< a hreF=# onClick=divkapat('none'); >açkapa< /a>
< a hreF=# onClick=divkapat(''); >açkapa< /a>
| zee | |
|
|
(0 puan) |
|
| 22 Şubat 2007 11:41 |
pillinetwork sitelerine yorum ekleyebilmek ve daha fazlası için, üye olun ya da giriş yapın.
İlgili Yazılar
Bu Yazıyı Tutanlar
Beğendiğiniz bir yazıya "tuttum" demek için başlığın yanındaki yıldıza tıklayabilirsiniz.


