jQuery – each Döngüsü İçerisinde Program Akışını Bekletme
Merhaba,
jQuery’de bir each döngüsüne girdiniz ve program akışını belli bir sınırda bekletmek istiyorsunuz. Tabi ki de hemen aklınıza setTimeout fonksiyonu geliyor ve aşağıdaki işlemi gerçekleştiriyorsunuz.
$.each(data, function (index, deger) { setTimeout(function () { ... }, 500); });
Hobpp balaa!
each fonksiyonu içerisinde setTimeout fonksiyonunu yukarıdaki gibi kullandığımız zaman algoritma belirtilen aralıkta işlemiyor ve ha deyince çalışıyor.
İşte böyle bir durumda aşağıdaki algoritmayı kullanırsanız istediğiniz tarzda işleminizi gerçekleştirebilirsiniz.
$.each(data, function (index, deger) { setTimeout(function () { ... }, 500 + (index * 500)); });
Bu algoritmadan anlaşıldığı kadarıyla setTimeout fonksiyonu her each döngüsünde var olan sürenin devamı niteliğinde çalışmaktadır.
Hepinize iyi çalışmalar dilerim…
Teşekkürler. ilginiçmiş hoşuma gitti; “Bu algoritmadan anlaşıldığı kadarıyla setTimeout fonksiyonu her each döngüsünde var olan sürenin devamı niteliğinde çalışmaktadır.”