Сброс значения элемента при достижении определенного значения

var slide = document.getElementsByClassName('slide');

var next = document.getElementsByClassName('slide-next')[0];
var prev = document.getElementsByClassName('slide-prev')[0];

var slideIndex = 0;


var i = 0;
var slideRun  = setInterval(
    function(){
        slide[i++].classList = 'slide active';
        slide[i - 2].classList = 'slide';
    }
,1000);

Есть вот такой вот код, при достижении i значения slide.length, нужно чтобы он обнулялся. пробовал вот такой вариант :

if(i == slide.length){
    i = 0;
}

но не работает.желательно нужно ещё и избавиться от error'ов в консоле.заранее спасибо.


Ответы (2 шт):

Автор решения: Igor
var i = 0;
var slideRun  = setInterval(
  function() {
    slide[(i++) % slide.length].classList.add('active');
    slide[(i - 2 + slide.length) % slide.length].classList.remove('active');
  }
, 1000);
→ Ссылка
Автор решения: Azizbek Toshpolatov

Можно ещё один вопрос, не отходя от темы? Это тот же код,Вы наверное уже поняли что работаю я над слайдером.И при настройке кнопок возникли проблемы :

 var slideNext = function(event){
    slide[(i++) % slide.length].classList.add('active');
    slide[(i - 2 + slide.length) % slide.length].classList.remove('active');

}

var slidePrev = function(event){
    slide[(i + 2 - slide.length) % slide.length].classList.remove('active');
}

next.addEventListener('click',slideNext);
prev.addEventListener('click',slidePrev);
 next работает отлично, а вот с prev возникли проблемы.да,  и ещё: можно ли стилизовать переход слайдера:скорость, плавность и т.д?
→ Ссылка