BUAT SLIDESHOW PURE JAVASCRIPT

ini nih gan saya lagi belajar bikin slideshow <a href='http://naufalh.tk'>http://naufalh.tk</a> atau <a href='http://naufalh.000webhostapp.com'>http://naufalh.000webhostapp.com</a>

cara bikin auto play slideshownya gimana ya? supaya gak ganggu tombol next/prev nya

ini kode htmlnya


 <section id="jumbozoid" class="main-content">
          <div class="arrow arrow-prev" onclick="plusDivs(-1)"><span></span></div>
            <div class="gallery-slide">

              <div class="wrap-content">
                  <div class="slideshow">
                    <img src="img/collect/0.png" alt="flat blue montain">
                    <p>TRY 1</p>
                  </div>
                  <div class="slideshow">
                    <img src="img/collect/1.png" alt="flat beautifull sunset">
                    <p>TRY 2</p>
                  </div>
                  <div class="slideshow">
                    <img src="img/collect/2.png" alt="flat mountain rain">
                    <p>TRY 3</p>
                  </div>
              </div>

            </div>
          <div class="arrow arrow-next" onclick="plusDivs(1)"><span></span></div>
        </section>

ini kode jsnya


// manual slideshow
var slideIndex = 1;
var imgTarget = document.getElementsByClassName("slideshow");

function plusDivs(n) {
  showDivs(slideIndex += n);
}

function showDivs(n) {
  var i;
  if (n > imgTarget.length) {slideIndex = 1}
  if (n < 1) {slideIndex = imgTarget.length}
  for (i = 0; i < imgTarget.length; i++) {
     imgTarget[i].style.opacity    = '0' ;
     imgTarget[i].style.transition = '1s ease-in-out';
  }
  imgTarget[slideIndex - 1].style.opacity    = '1' ;
  imgTarget[slideIndex - 1].style.transition = '1s ease-in-out';
}
showDivs(slideIndex);

mohon bantuannya terimakasih.

avatar naufalhfzhn
@naufalhfzhn

172 Kontribusi 59 Poin

Diperbarui 6 tahun yang lalu

10 Jawaban:

Boleh tau alasan bikin sendiri ga gan? Kenapa ga make yg udah ada aja? Hehe curious

avatar arioseno
@arioseno

26 Kontribusi 11 Poin

Dipost 6 tahun yang lalu


var waktu = 1000;//1 detik

setInterval(function(){
plusDivs(slideIndex++);
}, waktu)

mungkin gitu gan... jadi pindah setiap 1 detik

avatar sukmaw
@sukmaw

340 Kontribusi 75 Poin

Dipost 6 tahun yang lalu

@arieseno alasan saya bikin sendiri biar paham javascript dulu gan ,pengen lebih banyak belajar studi kasusnya dulu , nanti kalau uda paham juga pasti pake library kok(jquery dll), atau mungkin bang @arioseno punya metode yang lebih tepat bisa di share disini :D

avatar naufalhfzhn
@naufalhfzhn

172 Kontribusi 59 Poin

Dipost 6 tahun yang lalu

gak bisa bang @sukmaw , itu codenya ditempatkan dimana ya?

avatar naufalhfzhn
@naufalhfzhn

172 Kontribusi 59 Poin

Dipost 6 tahun yang lalu

kalau menurut ane sih paling bawah aja setelah fungsi nya ke load terlebih dahulu

logikanya sih pake setInterval setiap jarak / setiap 1 detik kita jalanin plusDivs dengan index nya += 1

coba liat console salah nya apa gan

avatar sukmaw
@sukmaw

340 Kontribusi 75 Poin

Dipost 6 tahun yang lalu

Jawaban Terpilih

dikasih counter buat atur kapan harus pindah slide. dan setiap ganti slide counternya direset. auto slide atau click arrow sama2 reset counter biar ga tabrakan.

var counter = 0;

function plusDivs(n) {
  showDivs(slideIndex += n);
  counter = 0; // counter reset ke 0 baik manual click ataupun auto slide
}

// tambahin ini di bawah
setInterval(function()
{
  counter++; // counter nambah per 1 detik
  if(counter >= 5)
  {
    plusDivs(1); // kalau counter >= 5 auto next slide
  }
}, 1000);

ini contohnya saya kasih tambahan show counternya https://embed.plnkr.co/IcddAMSW6ItonZeO3qp0/

avatar rachmatsasongko
@rachmatsasongko

410 Kontribusi 426 Poin

Dipost 6 tahun yang lalu

kalau maksud ane gini gan...

ada salah di codingan ane



var waktu = 5000;//5 detik

setInterval(function(){
plusDivs(1);
}, waktu)

setiap 5 detik pindah

avatar sukmaw
@sukmaw

340 Kontribusi 75 Poin

Dipost 6 tahun yang lalu

wah bang @rahmatsasongko dan bang @sukmaw makasih buat jawabannya ,alhamdulillah uda beres , makasih banyak bang , belajar javascript sampe bisa nyelesein studi kasusnya sendiri gitu berapa lama sih ? jujur aja saya masih bingung buat studi kasus di js , bagi2 tipsnya dong bang @rahmatsasongko @sukmaw hehe

sekali lagi makasih ya bang

avatar naufalhfzhn
@naufalhfzhn

172 Kontribusi 59 Poin

Dipost 6 tahun yang lalu

cuman saran ane aja gan.. agan belajar aja javascript nya pahami fungsi masing2 dan sambil mikir oh fungsi ini digunakan seperti berarti nanti di project saya bisa di implementasi kan... dan programmer juga ga semuanya tau semua fungsi di javascript.. jadi inget2 aja yang menurut agan emang berguna buat project

avatar sukmaw
@sukmaw

340 Kontribusi 75 Poin

Dipost 6 tahun yang lalu

@sukmaw siiiap bang , saran yang bermanfaat banget. intinya sering2 latihan ya bang :D

avatar naufalhfzhn
@naufalhfzhn

172 Kontribusi 59 Poin

Dipost 6 tahun yang lalu

Login untuk ikut Jawaban