Задать вопрос
@55igor_lebedev
фронтэнд

При нажатии на таб автоматическое перелючение табов должно перейти на ручное?

Добрый день! Есть скрипт для атоматического переключения табов. Как сделать так, что бы при нажатии на картинку таба, автоматический режим прекращался и переключать уже только вручную, до перезагрузки страницы.
div class="tabs">
  
 <ul class="tabNavigation">
 <li><a class="" href="#tabs-1">1</a></li>
 <li><a class="" href="#tabs-2">2</a></li>
 <li><a class="" href="#tabs-3">3</a></li>
 </ul>
  
 <div id="tabs-1">
img
 </div>
 <div id="tabs-2">
img
  </div>
 <div id="tabs-3">
img
 </div>
 </div>

$(function() {
    var t = 1;
    function switchTabs() {
        if (t > 3) t = 1;
        if (t == 1) $('div.tabs ul.tabNavigation li a[href="#tabs-1"]').click();
        if (t == 2) $('div.tabs ul.tabNavigation li a[href="#tabs-2"]').click();
        if (t == 3) $('div.tabs ul.tabNavigation li a[href="#tabs-3"]').click();
        t++;
    }
    var sw_tabs_timer1 = window.setInterval(switchTabs, 3000);
});
  • Вопрос задан
  • 115 просмотров
Подписаться 1 Средний 7 комментариев
Решения вопроса 1
@55igor_lebedev Автор вопроса
фронтэнд
Вот ответ по этому вопросу

$(function() {
  var t = 1;

  function switchTabs() {
    if (t > 3) t = 1;
    console.log("switchTabs - ", t);
    if (t == 1) $('a.my-tab[href="#tabs-1"]').click();
    if (t == 2) $('a.my-tab[href="#tabs-2"]').click();
    if (t == 3) $('a.my-tab[href="#tabs-3"]').click();
    t++;
  }
  var sw_tabs_timer1 = window.setInterval(switchTabs, 1000);

  $('a.my-tab').click(function(e) {
    if (e.originalEvent && e.originalEvent.isTrusted) {
      clearInterval(sw_tabs_timer1);
      sw_tabs_timer1 = null;
      console.log("stopped switchTabs");
    }
  });
});
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Ваш ответ на вопрос

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

Похожие вопросы