私は周りを4周回するスライドショーを自動的に作ります。私はこれのために働いている。 私がdiffuclutyを作成していることは、ボタン3をクリックするとdiv 3にジャンプし、そこで自動スライドがジャンプするボトムのボタンです。ここに私のコードは、これまで...Javascript - このスライドショーに動的なボタンを追加するにはどうすればいいですか?
<div id="slides">
<div></div> <div></div> <div></div> <div></div>
</div>
<div id="btns">
<a></a> <a></a> <a></a> <a></a>
</div>
Javascriptを:
(function slideshow(){
var slides = document.getElementById('slides').children;
var btns = document.getElementById('btns').children;
var i = 0;
slides[i].style.opacity= '1';
btns[i].style.opacity= '1';
slides[i].style.zIndex= '999';
function timer(){
i = (i + 1);
var len = slides.length;
var previousSlides = slides[ (i+len-1) % len ];
var previousBtns = btns[ (i+len-1) % len ];
if (i % slides.length == 0) {
i = 0;
}
slides[i].style.opacity= '1';
slides[i].style.zIndex= '999';
previousSlides.style.opacity= '0';
previousSlides.style.zIndex= '1';
btns[i].style.opacity= '1';
previousBtns.style.opacity= '0.5';
}
setInterval(timer, 4000);
}());
これは、これまでに動作しますが、再び私はあなたがクリックした場合、前記ボタンを機能させるについて行くにはどのよう見当がつかないbtn [i]それはスライド[i]にジャンプする。私はこれのラインに沿って何かがトリックを行うだろうと思ったが、それは動作していない。
btns[1].addEventListener('click', function(){
i = 1;
});
、主な問題とは全く関係のない欲しいものですが、誰かがこのラインを説明することができ、この希望のような何かを行うことができます私のためのコード...(i + len-1)%len ...私はどこかの場所からそれをコピーしたので、配列の周りをループしながら前の要素を返します。どちらが完璧に動作しますか、私は実際にどのように理解していません... –