Почему таймер не срабатывает при начале нового часа?

  • 27 августа 2023 г. 13:36
Ответы на вопрос 2
Таймер не срабатывает при начале нового часа, потому что вероятно код неправильно обрабатывает изменение значения переменной "hour". 

Если значение "hour" увеличивается на "hours" вместо единицы, это может быть вызвано опечаткой или ошибкой в коде. Возможно, вместо увеличения значения "hour" на единицу, используется какое-то другое значение "hours", которое не изменяется при наступлении нового часа. 

Чтобы исправить эту проблему, вам нужно найти место в коде, где обрабатывается изменение значения "hour" при наступлении нового часа и исправить его. Замените "hours" на "1" или используйте другую корректную логику, чтобы увеличивать значение "hour" на единицу при начале нового часа.
Убедитесь, что вы правильно используете переменную "hours" в своем коде. Возможно, вы неправильно обращаетесь к ней при проверке условия для нового часа. Чтобы исправить это, замените "hours++" на "h++" при проверке условия на новый час:

if (minute === '60') {
  h++;
  minute = '00';
  sec = '00';
}

Полный исправленный код будет выглядеть так:

window.onload = function() {
  var minute = '';
  var sec = '';
  var h = '';
  setInterval(function() {
    document.getElementById("t").innerHTML = h + minute + ":" + sec;
    sec++;
    if (sec < 10) {sec = '0' + sec;}
    if (sec === '60') {
      minute++;
      if (minute < 10) {minute = '0' + minute;}
      if (minute === '60') {
        h++;
        minute = '00';
        sec = '00';
      }
      sec = '00';
    }
  }, 1000);
}

Теперь ваш код должен правильно обрабатывать переход на новый час и обновлять значения минут, секунд и часов соответственно.
Похожие вопросы