Şimdi Ara

Javascript sorusu

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
1 Misafir - 1 Masaüstü
5 sn
10
Cevap
0
Favori
864
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Elimde A,B,C şeklinde 3 elemanlı bir liste olduğunu farz edelim.

    Bu listenin her bir elemanını 5 saniyede bir sırayla div in içinde göstermem gerekiyor. Bittğinde de başa dönüp sonsuza kadar tekrar edecek.

    Çok zor gibi görünmüyor ama atladığım bir şey var ve yapmadım.



    _____________________________
  • Settimeout kullanabilirsin.Sonsuz bir döngü kurup listeyi yazdır.

    < Bu ileti mobil sürüm kullanılarak atıldı >
    _____________________________
  • Javascript The Definitive Guide belgesinden aldığım işlev üzerine basit bir nesne yazarak:
    Javascript sorusu

    kırmızı sarı mavi serisinin elemanlarını her saniyede bir bastırdım. Bu kodu HTML içinde div içeriğine uygulayabilirsin.

    < Bu ileti mini sürüm kullanılarak atıldı >
    _____________________________
    Life is about having fun.

  • <div id="loop"></div>
    <script>
    var liste = ["Elma", "Armut", "Portakal"];
    var div = document.querySelector("#loop");
    var i = 0;

    div.innerHTML = liste[0];

    setInterval(function() {
    div.innerHTML = liste[++i % liste.length];
    }, 1000);
    </script>


    Edit: Ben süreyi 1 saniye olarak ayarladım daha hızlı gör diye. Sen 5000ms olarak ayarla orayı.



    < Bu mesaj bu kişi tarafından değiştirildi Revolution -- 5 Nisan 2020; 16:36:14 >
    _____________________________
    CPU: AMD Ryzen 9 5900x 12 Core 4.8 GHZ
    GPU: MSI GeForce RTX 3070 Ti SUPRIM X 8GB 256Bit GDDR6X
    RAM: Corsair Vengeance RGB Pro 16 GB (2x8) 3200MHz DDR4
    Anakart: ASUS Prime X570-P DDR4 4400MHz (O.C.)
    Monitör: Dell Alienware 27" AW2723DF 1Ms 280Hz IPS 2K
    Kasa: XIGMATEK Cockpit Mesh
    PSU: Thermaltake Toughpower GF1 850W 80+ Gold
  • Teşekkürler. İşimi gördü bu. div.innerHTML = liste[0]; Burada parantez içine neden i değil de 0 yazdığınızı anlamadım yalnız.

    @vonderplanitz
    Sizinki biraz karışık geldi. Pek anlamadım açıkçası.
    _____________________________
  • Hobar kullanıcısına yanıt
    Farketmez i de olur. Başlangıçta i değeri 0 zaten. Sadece sayfa açılırken ilk elamanı göstersin diye ekledim onu.
    _____________________________
    CPU: AMD Ryzen 9 5900x 12 Core 4.8 GHZ
    GPU: MSI GeForce RTX 3070 Ti SUPRIM X 8GB 256Bit GDDR6X
    RAM: Corsair Vengeance RGB Pro 16 GB (2x8) 3200MHz DDR4
    Anakart: ASUS Prime X570-P DDR4 4400MHz (O.C.)
    Monitör: Dell Alienware 27" AW2723DF 1Ms 280Hz IPS 2K
    Kasa: XIGMATEK Cockpit Mesh
    PSU: Thermaltake Toughpower GF1 850W 80+ Gold
  • Hobar kullanıcısına yanıt
    benim koddaki invoke fonksiyonu her amaca uysun diye geniş yazıldığı için biraz karışık yoksa Revolution'un yazdığı stilde olması gerekli. ayrıca (elma armut karpuz) serisinin endeksini hafızada tutması için nesne oluşturdum, kod daha da uzadı. Revolution 'un kod o işlemi de daha kısa çözüyor.



    < Bu mesaj bu kişi tarafından değiştirildi Tuğkan-0153 -- 5 Nisan 2020; 23:17:43 >
    < Bu ileti mini sürüm kullanılarak atıldı >
  • Yapay Zeka’dan İlgili Konular
    Faktöriyel Sorusu Yardım?
    16 yıl önce açıldı
    Kolay Bi Trigonometri Sorusu
    13 yıl önce açıldı
    Kolay integral sorusu
    9 yıl önce açıldı
    Daha Fazla Göster
  • Revolution kullanıcısına yanıt
    Şu an tam olarak istediğim gibi çalışıyor ama kodu biraz daha düzgün yapabilmek için kullandığım iki listeyi iki boyutlu tek listede push etmek istedim olmuyor. list.push(["@d.Title"],"@d.Target"]); şeklinde yaptığımda ard arda ekliyor. Bunu da yapabilir miyiz?

    Mevcut kod böyle.
    Javascript sorusu



    < Bu mesaj bu kişi tarafından değiştirildi Hobar -- 6 Nisan 2020; 12:42:30 >
    _____________________________
  • Hobar kullanıcısına yanıt
    Direkt list dizisi olsun sadece

    list.push(["@d.Title", "@d.Target"]);

    şeklinde yazarsan dizi iki boyutlu olur.

    list[++i % list.length][0];
    list[i % list.length][1];

    şeklinde erişebilirsin yazdırmak için de.

    list.push(["@d.Title"],"@d.Target"); Bu şekilde yaparsan push metodu ard arda ekler. Hatta bir array bir string türünde ekler saçma bir şey olur. Yukarıdaki gibi yapman lazım.



    < Bu mesaj bu kişi tarafından değiştirildi Revolution -- 6 Nisan 2020; 22:36:23 >
    _____________________________
    CPU: AMD Ryzen 9 5900x 12 Core 4.8 GHZ
    GPU: MSI GeForce RTX 3070 Ti SUPRIM X 8GB 256Bit GDDR6X
    RAM: Corsair Vengeance RGB Pro 16 GB (2x8) 3200MHz DDR4
    Anakart: ASUS Prime X570-P DDR4 4400MHz (O.C.)
    Monitör: Dell Alienware 27" AW2723DF 1Ms 280Hz IPS 2K
    Kasa: XIGMATEK Cockpit Mesh
    PSU: Thermaltake Toughpower GF1 850W 80+ Gold
  • 
Sayfa: 1

Benzer içerikler

- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.