/ / Slider Button Function - javascript, jquery, css, botão, controle deslizante

Função do botão deslizante - javascript, jquery, css, botão, controle deslizante

Eu tenho um slider que funciona perfeitamente com oexceção de obter o disco para animar o slide correspondente. Acho que, como os slides mudam o número deles para o loop infinito, ele mexe com o modo como os botões do disco os selecionam. Se alguém tiver uma correção, por favor bifurque meu código.

http://codepen.io/Spiderian/pen/IKvah

Aqui está o código em questão:

discs.click(function(e)
{
console.log( slideAnimating );


var btnIndex = discs.index(this);


if(!slideAnimating && btnIndex !== slideNumber)
{

timerFunction.pause();


nextSlide = btnIndex;


changeSlide();
}

Respostas:

1 para resposta № 1

Seu problema não está em discs.click, mas em changeSlide ().

Com esta edição, funcionará:

function changeSlide()
{

slideAnimating = true;

console.log( "slide out => " + slideNumber );
console.log( "slide IN => " + nextSlide + "n" );

currentDisk = nextSlide; // Edit #1

TweenMax.to( discs.eq(slideNumber), 1, {backgroundColor:"#ffffff", borderColor:"#f10000"});

TweenMax.to(slides[slideNumber], duration,
{
left:"-100%",
onComplete:function()
{

slideAnimating = false;

timerFunction.restart(true);

if( wrapper.hasClass( "mouse-over" ) )
{
timerFunction.pause();
}

TweenMax.set(this.target, {left:"100%"});
}
});

TweenMax.fromTo( discs.eq(currentDisk), 1, {backgroundColor:"#ffffff", borderColor:"#f10000"}, {backgroundColor:"#f10000", borderColor:"#ffffff"});

TweenMax.to(slides[nextSlide], duration,
{
left:"0%"
});

if( nextSlide < totalSlides -1 )
{

slideNumber = nextSlide;

nextSlide++;
}
else
{

slideNumber = nextSlide;

nextSlide = 0;
console.log("first slide!!");
}

}