Chrome замедляет таймер обратного отсчета javascript
У меня есть обратный отсчет времени в JS хорошо работает в IE но в chrome когда вкладка становится неактивной она замедляет таймер
Что я уже пробовал:
Я попробовал запустить событие на 900 миллисекунд и применил задержку og 100 мс но все равно не работает settimeout на 100 мс не работает
Patrice T
Покажите свой код (сокращенная версия)
Member 13796691
вот код , который я сделал settimeout для 900 миллисекунд, потому что на неактивной вкладке он работал нормально, но когда я добавляю задержку в 100 миллисекунд между ними, чтобы comepnsate, задержка не работает
var sec = 0;
var min = 0;
var hour = 0;
var i = 1;
функция секундомер(текст) {
//setTimeout(функция () {
// с++;
//}, 100);
функция myLoop() { // создайте функцию цикла, чтобы добавить задержку между 100 миллисекундами, потому что chrome замедляет таймер, когда вкладка неактивна
setTimeout(function () { // вызовите 100-миллисекундный setTimeout при вызове цикла
// ваш код здесь
i++; // инкремент счетчика
if (i < 100) { // если счетчик < 10, вызовите функцию цикла
myLoop(); // .. опять же, который вызовет другой
} // .. setTimeout()(
},100)
}
i = 1;
с++;
если (сек == 60) {
сек = 0;
мин = мин + 1;
}
еще {
Мин = Мин;
}
если (мин == 60) {
мин = 0;
час += 1;
}
if (sec <= 9) { sec = "0" + sec; }
document.clock.stwa.value = ((hour <= 9) ? "0" + hour : hour) + " : "+ ((min <= 9) ? "0" + мин : мин) + " : "+ сек;
if (text == "Start") { document.clock.theButton.value = "Pause "; }
если (текст == "пауза ") { документ.часы.кнопки.значение = "запустить"; }
если (документ.часы.кнопки.значение == "запустить") {
окна.clearTimeout(СД);
вернуть true;
}
SD = window.setTimeout("секундомер();", 900); //это должно быть 1000 миллисекунд(1 сек), так как его замедление в хроме я сделал событие, чтобы выстрелить в 900 миллисекунд
// минуты1 = сек / 60;
// var Totalminute = час * 60 + мин ;
var answer = document.getElementById("stwa").value;
//textbox3.value = ответ;
document.getElementById('textbox3').value = ответ;
}
функция resetIt() {
сек = -1;
мин = 0;
час = 0;
if (document.clock.theButton.value == "пауза ") {
документ.часы.кнопки.значение = "запустить";
}
окна.clearTimeout(СД);
документ.метода getElementById('textbox3 и').значение = "00" + ":" + "00" + ":" + "00";
}