Как сделать, чтобы когда листался слайдер, то он постоянно пролистывался на 400px,а не один раз

Есть слайдер, нужно чтобы по нажатию на кнопку он пролистывал 400px постоянно, но у меня получается только один раз сделать, а дальше он стоит на месте. Вот код:

function slidesFieldTransform() {
    slidesField.style.transform = `translateX(-${400}px)`;
}

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

Автор решения: highpassion

Чтобы Ваш слайдер не заканчивал работу, вам нужно запускать код функции внутри "вечного" цикла. К примеру, вариант с while:

function slidesFieldTransform() {
    while (true) {
      setTimeout(function(){ 
         slidesField.style.transform = `translateX(-${400}px)`; 
       }, 1000)
    }
}

Таким образом, у Вас будет вечная прокрутка с интервалом в одну секунду, Вы можете изменить количество миллисекунд интервала, либо же применить собственное решение для красивой работы слайдера.

Либо же вы можете использовать setInterval для постоянной прокрутки:

function slidesFieldTransform() {
    setInterval(function(){ 
         slidesField.style.transform = `translateX(-${400}px)`; 
    }, 1000)
}

→ Ссылка