B-Allen
@B-Allen
webmaster

Переделать карусель в зацикленную (безконечную)?

Использую для карусели простой js код, взятый с lern.javascript.ru, нужно его передеалать в бесконечный, зацикленый, чтобы после последней картинки шла первая.
Не могу понять как это сделать, переделав этот код. Или может лучше и быстрее будет использовать готовое решение?
(function() {
  // карусель
    /* конфигурация */
    var width = 130; // ширина изображения
    var count = 3; // количество изображений
    var minCount = 1;

    var carousel = document.getElementById('carousel-bottom');
    if (carousel != null) {
    var list = carousel.querySelector('ul');
    var listElems = carousel.querySelectorAll('li');

    var position = 0; // текущий сдвиг влево
    
    carousel.querySelector('.prev-carousel-bottom').onclick = function() {
      // последнее передвижение влево может быть не на 3, а на 2 или 1 элемент
      position = Math.min(position + width * count, 0)
      list.style.marginLeft = position + 'px';
    };

    carousel.querySelector('.next-carousel-bottom').onclick = function() {
      position = Math.max(position - width * count, -width * (listElems.length - minCount));
      list.style.marginLeft = position + 'px';
    };
    }

}());
  • Вопрос задан
  • 341 просмотр
Решения вопроса 1
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы