JavaScript, проблема с SetInterval

331
26 сентября 2017, 08:43

Подскажите, почему без if-а таймер работает нормально, а с ним - вообще не запускается?

var sum = 0;
var first = 0;
var second = 0;
function additionFunction() {
document.getElementById('example').innerHTML = "";
document.getElementById('timerAddition').innerHTML = "";
first = Math.floor(Math.random() * 10);
second = Math.floor(Math.random() * 10);
if (right >= 1) {
    first = Math.floor(Math.random() * 15);
    second = Math.floor(Math.random() * 15);
}
sum = parseInt(first + second);
document.getElementById('example').innerHTML = first.toString() + " + " + second.toString();
document.getElementById('timerAddition').innerHTML = sum + Math.floor(Math.random() * 8);
timerAddition();
}
var timerID = setInterval(timerAddition, 1000);
function timerAddition() {
var obj = document.getElementById('timerAddition');
obj.innerHTML--;
if (obj.innerHTML < sum.innerHTML) {
    clearInterval(timerID);
}
}
Answer 1
obj.innerHTML < sum.innerHTML

Потому что тут вместо чисел сравниваются строки. Можно попробовать так:

+obj.innerHTML < +sum.innerHTML

но вообще плохо деражать данные в разметке.

READ ALSO
Клик на мобильном устройстве

Клик на мобильном устройстве

Данный код обрабатывает клик на компьютере, но не обрабатывает клик на телефонеКак его адаптировать, чтобы клик отслеживался на телефоне?

366
Использование IF со style.backgroundImage

Использование IF со style.backgroundImage

ПриветЯ начал изучать JS и в процессе работы возник вопрос

376
Как остановить скрытие блока при mouseover/out?

Как остановить скрытие блока при mouseover/out?

Помогите доработать задумкуНа странице есть кнопка или ссылка с ID, при наведении на которую рядом с ней появляется блок в котором я создаю...

315