Задать вопрос
  • Таймер jQuery countdown360 - как сделать функцию "Pause/Unpause"?

    В файл jquery.countdown360.js добавьте две фу-и:
    pause: function () {
          clearInterval(this.interval);
    },
    
    unpause: function () {
           this.extendTimer(Math.round((new Date().getTime() - this.startedAt.getTime())/1000) - this.secondsElapsed);
           this.interval = setInterval(jQuery.proxy(this._draw, this), 1000);
        }

    И ф-я _draw вот такая будет:
    _draw: function () {
    
          var secondsElapsed = Math.round((new Date().getTime() - this.startedAt.getTime())/1000),
              endAngle = (Math.PI*3.5) - (((Math.PI*2)/this.settings.seconds) * secondsElapsed);
    
          this.secondsElapsed = secondsElapsed;
    
          this._clearRect();
          this._drawCountdownShape(Math.PI*3.5, false);
          if (secondsElapsed < this.settings.seconds) {
            this._drawCountdownShape(endAngle, true);
            this._drawCountdownLabel(secondsElapsed);
          } else {
            this._drawCountdownLabel(this.settings.seconds);
            this.stop();
            this.settings.onComplete();
          }
        }

    Другими словами в ней надо добавить:
    this.secondsElapsed = secondsElapsed;
    И будет вам счастье.
    Ответ написан
    4 комментария