manavar_g
@manavar_g
Чайник ;)

Как сделать слайдер автоматическим?

Добрый день! Совсем не разбираюсь в JS, но очень уж понравился один слайдер. По умолчанию он листает влево-право, как сделать так, чтобы он делал это автоматически? С какой-либо задержкой
var elementCount = 0;
var firstPos = 0;
var lastPos = 0;

$(function() {
  initialiseSlider();
  $("#next").click(function() {
    slideRight();
  });
  $("#previous").click(function() {
    slideLeft();
  });
});

function initialiseSlider() {
  $(".slide").each(function(value) {
    elementCount += 1;
    var position = -100 * value;
    $(this).css("right", position + "%");
  });
  if (elementCount === 1)
    $("#next").hide();
}

function slideRight() {
  $(".slide").each(function(value) {
    var position = parseInt($(this)[0].style.right) + 100;
    if (value === 0) {
					firstPos = position;
				}
    $(this).css("right", position + "%");
  });
  if (firstPos !== ((elementCount - 1) * 100)) {
    $("#next").show();
    $("#previous").show();
  } else
    $("#next").hide();
}

function slideLeft() {
  $(".slide").each(function(value) {
    var position = parseInt($(this)[0].style.right) - 100;
    if (value === (elementCount - 1)) {
					lastPos = position;
				}
    $(this).css("right", position + "%");
  });
  if (lastPos !== ((elementCount - 1) * -100)) {
    $("#previous").show();
    $("#next").show();
  } else
    $("#previous").hide();
}
  • Вопрос задан
  • 104 просмотра
Решения вопроса 1
NeiroNx
@NeiroNx
Программист
https://learn.javascript.ru/settimeout-setinterval
var autoSlide = SetInterval(slideRight, 3000);//листает вправо кадлые 3 секунды

<button onclick="ClearInterval(autoSlide)">Остановить автолисталку</button>
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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