Я пытаюсь сбросить счет до 0, когда условия 1 или 2 выполняются при каждом переходе через одну функцию каждые 2 секунды. В какой момент я бы выполнил сброс. Например;Как сбросить счетчик при выполнении условия?
var timer;
var a = 'door';
var b = '';//this is set by an ajax call that fires off every second
var count = 0;
function condition(){
//condition 1
if(a == 'door' && b == 'inside' && count < 30){
$('#action').html('Person A');
count++;
//after 1 minute show 1 minute sign
} else {
$('#action').html('It\'s been 1 minute');
count = 31;
}
//condition 2
if(a == 'door' && b == 'outside' && count < 30){
$('#action').html('Person B');
count++;
//after 1 minute show 1 minute sign
} else {
$('#action').html('It\'s been 1 minute');
count = 31;
}
//condition 3
//empty div & reset count
if(b == ''){
$('#action').empty();
count = 0;
}
//set interval
clearInterval(timer);
timer = setInterval(condition, 2000);// 2 seconds x 30 = 1 minute
}
condition();
Что работает? Что не работает? Как часто срабатывает вызов ajax, и гарантируется ли, что он всегда будет возвращаться наружу или внутри? Существует много потенциальных проблем и решений. –
В настоящее время, как и сейчас, идентификатор действия освобождается, а счетчик равен 0. Я хотел бы, чтобы он начинал отсчет снова через 30 итераций или когда он отвечал другому условию. Ajax вызывается каждую секунду. –