So habe ich ein ordentliches kleines Karussell, das funktioniert, indem Sie auf einen Pfeil nach links oder rechts klicken.
Javascript:Autoplay Javascript Karussell bis zum Klicken klicken
unitWidth = 760;
unitTotal = 4;
unitCtr = 1;
onLeftArrow = function(e) {
//alert("Left");
disableArrows();
if (unitCtr<=unitTotal) {
unitCtr++;
TweenLite.to(productImg, 0.6, {x: "-="+unitWidth, onComplete:enableArrows });
}
hideArrows();
}
onRightArrow = function(e) {
//alert("Right");
disableArrows();
if (unitCtr>1) {
unitCtr--;
TweenLite.to(productImg, 0.6, {x: "+="+unitWidth, onComplete:enableArrows });
}
hideArrows();
}
function hideArrows() {
//alert(unitCtr)
if (unitCtr <= 1) {
arrowRight.style.visibility = "hidden";
arrowLeft.style.visibility = "visible";
}
if (unitCtr >= unitTotal) {
arrowRight.style.visibility = "visible";
arrowLeft.style.visibility = "hidden";
}
if (unitCtr>1 && unitCtr<unitTotal) {
arrowRight.style.visibility = "visible";
arrowLeft.style.visibility = "visible";
}
}
function disableArrows() { //ADDED NEW FUNCTION TO DISABLE ARROWS
arrowLeft.removeEventListener('click', onLeftArrow, false);
arrowRight.removeEventListener('click', onRightArrow, false);
}
function enableArrows() { //ADDED NEW FUNCTION TO RE-ENABLE ARROWS
arrowLeft.addEventListener('click', onLeftArrow, false);
arrowRight.addEventListener('click', onRightArrow, false);
}
HTML:
<div id="arrowL">
<img src="arrow_click.png" width="100" height="415" />
</div>
<div id="arrowR">
<img src="arrow_click.png" width="100" height="415" />
</div>
<div id="product_img">
<div class="img_container" id="product1">
<img src="panel1.jpg" class="product" />
</div>
<div class="img_container" id="product2">
<img src="panel2.jpg" class="product" />
</div>
<div class="img_container" id="product3">
<img src="panel3.jpg" class="product" />
</div>
<div class="img_container" id="product4">
<img src="panel4.jpg" class="product" />
</div>
</div>
ich für das Karussell möchte den ganzen Weg durch einmal automatisch abgespielt, bis sie das Ende oder jemand Klicks erreicht einen Pfeil . Irgendwelche Vorschläge für den besten Weg, dies zu tun? (Ich verwende GSAP, um die tatsächliche Bewegung zu behandeln)
eine Funktion machen, die Schieberbewegung behandelt (Übergang) und setzen die Funktion innerhalb eines 'setInterval' und wenn es das Ende oder einige angeklickte Pfeile erreicht hat, benutze' clearInterval' –
Tipp: Mach deinen js-Code modular. Es ist schwer, ein gutes Karussell ohne modulares Muster zu haben –
Beispiel? Ich würde es zu schätzen wissen und dann kann ich Ihre Antwort als die Lösung und etc. markieren. – user2561920