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

Как отложить выполнение данного скрипта ещё на столько же по клику на кнопку с классом .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)


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

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

Как то так...

<h3>Скидка действует еще <span class="result">10</span> секунд.</h3><button class="button">Продлить скидку</button>

    <script>
let xTime = 10;

function timeStart() {
    if (xTime >= 0) {
        document.querySelector('.result').innerHTML = xTime--;
        setTimeout(function() {
            timeStart();
        }, 1000);
    }
}
    
document.querySelector('.button').addEventListener("click", function() {
  xTime=10;
});
    
timeStart();
    </script>

→ Ссылка