@ishimskayamahorka14

Как отложить выполнение скрипта ещё на время по нажатию?

Как отложить выполнение данного скрипта ещё на столько же по клику на кнопку с классом .button?
function myFeed() {
    
    if(/iPhone|iPad|iPod|Android/i.test(navigator.userAgent)) {
      (function(w, d, n, s, t) {
        w[n] = w[n] || [];
        w[n].push(function() {
          Ya.Context.AdvManager.render({
            blockId: "R-A-9999-9"",
            renderTo: "yandex_rtb_R-A-9999-9",
            async: true
          });
        });
        t = d.getElementsByTagName("script")[0];
        s = d.createElement("script");
        s.type = "text/javascript";
        s.src = "//an.yandex.ru/system/context.js";
        s.async = true;
        t.parentNode.insertBefore(s, t);
      })(this, this.document, "yandexContextAsyncCallbacks");
    }
  }
  setTimeout(function(){
    myFeed();

  },5000)
  • Вопрос задан
  • 164 просмотра
Пригласить эксперта
Ответы на вопрос 1
sergiks
@sergiks Куратор тега JavaScript
♬♬
let timer = setTimeout(myFeed, 5000); // теперь таймер в переменной

const resetTimer = () => {
  clearTimeout(timer);
  timer = setTimeout(myFeed, 5e3);
}

[...document.querySelectorAll('button.button')]
  .forEach((btn) => btn.addEventListener('click', resetTimer));
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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