- 2.3k
- 7
- 25
- 34
Есть едакий кодКод:
var first = 0;
var second = 0;
var sub = 0;
function subtractionFunction() {
document.getElementById('example').innerHTML = "";
document.getElementById('timerSubtraction').innerHTML = "";
first = Math.floor(Math.random() * 5);
second = Math.floor(Math.random() * 5);
sub = parseInt(first-second);
document.getElementById('example').innerHTML += first;
document.getElementById('example').innerHTML += " ";
document.getElementById('example').innerHTML += '-';
document.getElementById('example').innerHTML += " ";
document.getElementById('example').innerHTML += second;
document.getElementById('timerSubtraction').innerHTML = first + Math.floor(Math.random() * 8);
}
function timerSubtraction() {
var obj = document.getElementById('timerSubtraction');
obj.innerHTML--;
if (obj.innerHTML < sub) {
return subtractionFunction();
} else {
setTimeout(timerSubtraction, 1000);
}
}
<div onclick="subtractionFunction(); timerSubtraction()"> Click </div>
<div id="example"></div>
<div id="timerSubtraction"></div>
И проблема вот здесь:
if (obj.innerHTML < sub) {return subtractionFunction();}.
Никак не могу понять как же
if (obj.innerHTML < sub) {return subtractionFunction();}
Как снова вызвать эти две функции при таком раскладе.
Пробовала вызвать subtractionFunctionsubtractionFunction, вызывая в ней при этом timerSubtractiontimerSubtraction, но не выходит, потому что число уменьшается с шагом в .
Подскажите, пожалуйста, какКак это исправить.?
Есть едакий код:
var first = 0;
var second = 0;
var sub = 0;
function subtractionFunction() {
document.getElementById('example').innerHTML = "";
document.getElementById('timerSubtraction').innerHTML = "";
first = Math.floor(Math.random() * 5);
second = Math.floor(Math.random() * 5);
sub = parseInt(first-second);
document.getElementById('example').innerHTML += first;
document.getElementById('example').innerHTML += " ";
document.getElementById('example').innerHTML += '-';
document.getElementById('example').innerHTML += " ";
document.getElementById('example').innerHTML += second;
document.getElementById('timerSubtraction').innerHTML = first + Math.floor(Math.random() * 8);
}
function timerSubtraction() {
var obj = document.getElementById('timerSubtraction');
obj.innerHTML--;
if (obj.innerHTML < sub) {
return subtractionFunction();
} else {
setTimeout(timerSubtraction, 1000);
}
}
<div onclick="subtractionFunction(); timerSubtraction()"> Click </div>
<div id="example"></div>
<div id="timerSubtraction"></div>
И проблема вот здесь:
if (obj.innerHTML < sub) {return subtractionFunction();}.
Никак не могу понять как же снова вызвать эти две функции при таком раскладе.
Пробовала вызвать subtractionFunction, вызывая в ней при этом timerSubtraction, но не выходит, потому что число уменьшается с шагом в .
Подскажите, пожалуйста, как это исправить.
Код:
var first = 0;
var second = 0;
var sub = 0;
function subtractionFunction() {
document.getElementById('example').innerHTML = "";
document.getElementById('timerSubtraction').innerHTML = "";
first = Math.floor(Math.random() * 5);
second = Math.floor(Math.random() * 5);
sub = parseInt(first-second);
document.getElementById('example').innerHTML += first;
document.getElementById('example').innerHTML += " ";
document.getElementById('example').innerHTML += '-';
document.getElementById('example').innerHTML += " ";
document.getElementById('example').innerHTML += second;
document.getElementById('timerSubtraction').innerHTML = first + Math.floor(Math.random() * 8);
}
function timerSubtraction() {
var obj = document.getElementById('timerSubtraction');
obj.innerHTML--;
if (obj.innerHTML < sub) {
return subtractionFunction();
} else {
setTimeout(timerSubtraction, 1000);
}
}
<div onclick="subtractionFunction(); timerSubtraction()"> Click </div>
<div id="example"></div>
<div id="timerSubtraction"></div>
И проблема вот здесь:
if (obj.innerHTML < sub) {return subtractionFunction();}
Как снова вызвать эти две функции при таком раскладе.
Пробовала вызвать subtractionFunction, вызывая в ней при этом timerSubtraction, но не выходит, потому что число уменьшается с шагом в .
Как это исправить?
JavaScript, setTimeout
Есть едакий код:
var first = 0;
var second = 0;
var sub = 0;
function subtractionFunction() {
document.getElementById('example').innerHTML = "";
document.getElementById('timerSubtraction').innerHTML = "";
first = Math.floor(Math.random() * 5);
second = Math.floor(Math.random() * 5);
sub = parseInt(first-second);
document.getElementById('example').innerHTML += first;
document.getElementById('example').innerHTML += " ";
document.getElementById('example').innerHTML += '-';
document.getElementById('example').innerHTML += " ";
document.getElementById('example').innerHTML += second;
document.getElementById('timerSubtraction').innerHTML = first + Math.floor(Math.random() * 8);
}
function timerSubtraction() {
var obj = document.getElementById('timerSubtraction');
obj.innerHTML--;
if (obj.innerHTML < sub) {
return subtractionFunction();
} else {
setTimeout(timerSubtraction, 1000);
}
}
<div onclick="subtractionFunction(); timerSubtraction()"> Click </div>
<div id="example"></div>
<div id="timerSubtraction"></div>
И проблема вот здесь:
if (obj.innerHTML < sub) {return subtractionFunction();}.
Никак не могу понять как же снова вызвать эти две функции при таком раскладе.
Пробовала вызвать subtractionFunction, вызывая в ней при этом timerSubtraction, но не выходит, потому что число уменьшается с шагом в .
Подскажите, пожалуйста, как это исправить.