• 05-05-2015, 00:35:56
    #1
    arkadaşlar internette bir kaçtane sayaç kodu buldum ama anlamadım çalışma prensiplerini. mesela;

    <div id="dl">HATA: Lütfen JavaScript'i Aktifleştirin.</div> 
    <script>
    var c = 50; 
    function fc(){ 
    if(c>0){
    document.getElementById("dl").innerHTML = c+" sn"; 
    c = c - 1;
    setTimeout("fc()", 1000);
    } 
    else {
    }
    }
    fc();
    </script>
    bu kod normalde 50 saniyeden geri sayım değil mi? ama ben çalıştırınca karmaşık şekilde ilerliyor. bazen normal eksiliyor bazen hızlanıyor bazen yavaşlıyor. nasıl halledebilirim bu sorunu?
  • 06-05-2015, 16:30:25
    #2
    Bende normal calisiyor buldugun kod. Hangi browser kullaniyorsun?
  • 06-05-2015, 23:21:48
    #3
    Merhaba

    Mesajınızdaki kodda sorun gözükmüyor.

    Kodda yapılan işlem;

    1) c değişkenini sayaç olarak kullanıyor. İlk değeri 50
    2) İlk başta div'e 50 değerini yazıyor.
    3) Daha sonra sonra c değişkeninin değerini bir azaltıyor.
    4) 1000 ms = 1 sn bekliyor ve fonksiyon kendini tekrar çağırıyor.

    Böylece 2,3,4 adımlarını recursive olarak yapıp, 50'den geriye doğru geriye saymış oluyor.

    var c = 50;
    
    function fc() {
        if (c > 0) {
            document.getElementById("dl").innerHTML = c + " sn";
            c = c - 1;
            setTimeout("fc()", 1000);
        }
    }