Jak wyczyścić interwał i ustawić go ponownie?
Oto, co próbuję osiągnąć: po osiągnięciu ostatniego slajdu fadeOut ostatni slajd, a następnie fadeIn pierwszy slajd, a następnie clearInterval(wszystko działa z tą częścią). Teraz mój problem polega na tym, że chcę ustawić Intervaljeszcze raz jeśli nie istnieje, ale nie wiem, jak to zrobić :(
Próbowałem rozwiązać ten problem, jeśli statystyki, ale mój skrypt w ogóle nie działa!
Jak mogę ponownie URUCHOMIĆ mój interwał? DZIĘKUJĘ CI!!
Bez jeśli takie stwierdzenie działa poprawnie:
if(!intervalID){
intervalID = setInterval(animate,5000);
}
Oto, co mam do tej pory:
$(document).ready(function() {
/*check if intervalID don't exists messes UP!!*/
if (!intervalID) {
intervalID = setInterval(animate, 5000);
}
//Hide everything except first slide and controls
$('.slidewrap div:not(.slidewrap div:first,.slidewrap .slide_controls)').hide();
var animate = function() {
/*if .pagination_active is last removeClass and addClass to .pagination_active
first li tag*/
if ($('.pagination_active').is($('.slide_controls ul li:last'))) {
$('.pagination_active').removeClass('pagination_active');
$('.slide_controls ul li:first').addClass('pagination_active');
} else {
$('.pagination_active').removeClass('pagination_active').next().addClass('pagination_active');
}
/*if div.active is last fadeOut and add .active class
to the first div and fadeIn FIRST div then CLEAR INTERVAL and set intervalID to zero */
if ($('.active').is($('.slidewrap div:last'))) {
$('.active').fadeOut(1000).removeClass('active');
$('.slidewrap div:first').addClass('active').fadeIn(1000, function() {
clearInterval(intervalID);
intervalID = 0;
});
}
//OR .active fadeOut and next div fadeIn
else {
$('.active').fadeOut(1000).next().fadeIn(1000, function() {
$('.slidewrap div.active').removeClass('active').next('div').addClass('active');
});
}
}
var intervalID;
intervalID = setInterval(animate, 3000);
});