Kodları lütfen aşağıdaki butonları kullanarak renklendirin. Örnek: <php> echo "Selam Dünya"; </php>
Yardım
karakter kaldı

JQuery if döngüsü sorunu.

Aşşağıdaki kodlamada son 'ya .aktif atandıktan sonra başa döndürmeye çalışıyorum ama dönmüyor.
Javascript'e geçen çarşamba başladım. Hatamı nedeni ile yazarsanız çok yardım edersiniz.

Olası düzenlemeyi açıklarsanız daha da sevinirim.

$(document).ready(function(){

dongu = setInterval(function(){
$ilka = $("#sag_menu a:first-child");
$suan = $("#sag_menu a.aktif");
$sona = $("#sag_menu a:last-child");
if ($sona == $suan){$suan.removeClass("aktif");
$ilka.addClass("aktif")}else{$siradaki = ($suan).next();
$suan.removeClass("aktif");
$siradaki.addClass("aktif")};
}, 1000);


dongu();
});
+0
-0
Cevaba KatılıyorumKatılmıyorum
Cevap Yaz Yorum Yaz Arşivime Ekle Takip Et

Doğru Cevap

  • fka adlı üyenin fotoğrafı
    8 yıl önce yazılmış
    70 cevap - 0 soru
    Merhaba,

    Burada "dongu" bir fonksiyon değil. Bir interval değeridir.
    $(document).ready(function(){
    var dongu = function() {
    .....
    dongu();
    }
    setInterval(dongu, 1000);
    });
    

    şeklinde yapabilirsin fakat bu da sistemi yorar. Zaten Interval 1 saniyede 1lik bir döngüye girecek,

    $(document).ready(function(){
    var dongu = function() {
    .....
    }
    setInterval(dongu, 1000);
    });
    


    demen daha doğru olur.
    • Lupus adlı üyenin fotoğrafı Lupus
      Anlattığın gibi düzenledim ama hala sona geldiğinde duruyor.
      8 yıl önce yazılmış
    • Lupus adlı üyenin fotoğrafı Lupus
      $(document).ready(function(){


      var dongu = function(){
      $ilka = $("#sag_menu a:first-child");
      $suan = $("#sag_menu a.aktif");
      $sona = $("#sag_menu a:last-child");
      if ($sona == $suan){$suan.removeClass("aktif");
      $ilka.addClass("aktif")}else{$siradaki = ($suan).next();
      $suan.removeClass("aktif");
      $siradaki.addClass("aktif")};
      };
      setInterval(dongu, 2000);
      });



      8 yıl önce yazılmış
    • fka adlı üyenin fotoğrafı fka
      $(document).ready(function(){
      var dongu = function(){
      console.log('dongu..');
      };
      setInterval(dongu, 2000);
      }); 
      


      Eğer bu çalışıyorsa, sorun büyük ihtimalle kurduğun algoritmadadır.

      $sona == $suan demek yerine

      $sona.is('.aktif'); dersen sana true false dönecektir bunu kullanabilirsin, burada hata oluyor olabilir. Yalnız denemedim.
      8 yıl önce yazılmış

Cevaplar

  • Lupus adlı üyenin fotoğrafı
    8 yıl önce yazılmış
    8 cevap - 13 soru
    $(document).ready(function(){



    var dongu = function(){
    $ilka = $("#sag_menu a:first-child");
    $suan = $("#sag_menu a.aktif");
    $sona = $("#sag_menu a:last-child");

    if
    ($sona.is('.aktif')){
    $suan.removeClass("aktif");
    $ilka.addClass("aktif")}
    else
    {
    $siradaki = ($suan).next();
    $suan.removeClass("aktif");
    $siradaki.addClass("aktif")};
    };
    setInterval(dongu, 2000);
    });


    Çalıştı çok saol fka