У меня проблема таймер вкл работает неправильно он считает время перерыва никак не получаеться сделать так что-бы таймер не вкл время перерыва
Я делаю для этого сайта таймер можете тоже проверит тут ваш код таймер всегда вкл время перерыва в счет и получаеться много показывает надо что-бы таймер не учитывал время перерыва и все
function formatTime(seconds) {
var minutes = Math.floor(seconds / 60);
var remainingSeconds = seconds % 60;
return minutes + ':' + (remainingSeconds < 10 ? '0' : '') + remainingSeconds;
}
function updateTimer() {
var currentTime = document.getElementById('life-time').getAttribute('current-time');
var startTime = document.getElementById('life-time').getAttribute('data-start-time');
var pirodeAdd = parseInt(document.getElementById('life-time').getAttribute('data-periode-add')) || 0;
var currentTimestamp = new Date('1970-01-01T' + currentTime + 'Z').getTime();
var startTimestamp = new Date('1970-01-01T' + startTime + 'Z').getTime();
var elapsedTime = Math.floor((currentTimestamp - startTimestamp) / 1000) + pirodeAdd;
var pirodeTimeElements = document.querySelectorAll('[id="life-time"][data-periode-time]');
var pauseTimeElements = document.querySelectorAll('[id="life-time"][data-pause-time]');
for (var i = 0; i < pauseTimeElements.length; i++) {
var element = pauseTimeElements[i];
var pauseStartTime = element.getAttribute('data-pause-time-start');
var pauseEndTime = element.getAttribute('data-pause-time-end');
var pauseStartTimestamp = new Date('1970-01-01T' + pauseStartTime + 'Z').getTime();
var pauseEndTimestamp = new Date('1970-01-01T' + pauseEndTime + 'Z').getTime();
if (currentTimestamp >= pauseStartTimestamp && currentTimestamp <= pauseEndTimestamp) {
elapsedTime -= parseInt(element.getAttribute('data-pause-time'));
break;
}
}
document.getElementById('life-time').innerText = formatTime(elapsedTime);
}
setInterval(updateTimer, 1000);
<div class="img-info__period"
id="life-time"
current-time="18:51:34"
data-start-time="14:00:00"
data-periode-count="3"
data-periode-add="0"
data-periode-time-1="2700"
data-pause-time-1="900"
data-periode-time-2="2700"
data-pause-time-2="900"
data-periode-time-3="2700"
data-pause-time-3="900"
data-pause-time-start-1="14:45:00"
data-pause-time-end-1="15:00:00"
data-pause-time-start-2="15:45:01"
data-pause-time-end-2="16:00:01"
data-pause-time-start-3="16:45:02"
data-pause-time-end-3="17:00:02"
data-pause-time-timer-1="45:00"
data-pause-time-timer-2="90"
data-pause-time-timer-3="135"
data-periode-end="02:15:00"
>291:33</div>