• 26-10-2020, 12:44:27
    #1
    Merhabalar,
    jquery de each ile bir döngü oluşturdum bu döngü tamamlanınca tekrar baştan başlamasını istiyorum bu jquery de nasıl yapılabilir?
    hazırladığım kodlar:

    var img = ["1.png", "2.png", "3.png", "4.png", "5.png"];
    
     $.each(img, function(i, value){
                    setTimeout(function(){
                        $(".simg").attr("src", value);
                        $("strong").text(i);
                    },i * 1000);
                });
  • 26-10-2020, 12:47:36
    #2
    Bir koşula bağlı sonsuza kadar devam etmesini istiyorsan While, belirli sayıda devam etmesini istiyorsan For, Dizi kadar dönmesini istiyorsan Foreach.
  • 26-10-2020, 12:49:15
    #3
    setTimeout yerine setInterval kullanabilirsiniz

    düzenleme: yok yok kullanamazmışsınız şöyle yapın
    var img = ["1.png", "2.png", "3.png", "4.png", "5.png"];
    var imgindex = 0;
    
    setInterval(function(){
    if(imgindex == img.length)
    imgindex = 0;
    $(".simg").attr("src", img[imgindex]);
    $("strong").text(imgindex);
    imgindex += 1;
    }, 1000);
  • 26-10-2020, 12:52:00
    #4
    VeLi33 adlı üyeden alıntı: mesajı görüntüle
    Merhabalar,
    jquery de each ile bir döngü oluşturdum bu döngü tamamlanınca tekrar baştan başlamasını istiyorum bu jquery de nasıl yapılabilir?
    hazırladığım kodlar:

    var img = ["1.png", "2.png", "3.png", "4.png", "5.png"];
    
     $.each(img, function(i, value){
                    setTimeout(function(){
                        $(".simg").attr("src", value);
                        $("strong").text(i);
                    },i * 1000);
                });
    Bunu fonksiyon içine alıp o fonksionun içinde oluşturduğun fonksiyonu çalıştırabilirsin.
  • 26-10-2020, 12:57:49
    #5
    var img = ["1.png", "2.png", "3.png", "4.png", "5.png"];
    
    function loop() {
    $.each(img, function(i, value) {
    setTimeout(function() {
    $(".simg").attr("src", value);
    $("strong").text(i);
    }, i * 1000);
    if (i == img.length - 1) {
    setTimeout(loop, (i + 1) * 1000);
    }
    });
    }
    loop();