Очистить setInterval и предотвратить сбои

Я хочу знать, есть ли способ перезапустить / очистить setInterval(); функция в Javascript? Моя проблема в том, что когда вы идете сюда:: http://jsfiddle.net/GqrRx/2/ (извините, он не хочет здесь работать)... но если вы идете туда и вводите дату, она работает нормально. Но если вы введете другую дату, секунды, минуты и часы будут мигать и мигать. Я думаю, что мне нужно найти способ перезапустить интервал или остановить его.

Я пытался поставить это на вершине своей функции, но, похоже, ничего не получалось.

clearInterval(runSeconds);
clearInterval(runMinutes);
clearInterval(runHours);

Я также попробовал это:

var secInt = setInterval(runSeconds, 1000);
var minInt = setInterval(runMinutes, 60000);
var hInt = setInterval(runHours, 3600000);
clearInterval(secInt);
clearInterval(minInt);
clearInterval(hInt);

1 ответ

Установить результат setInterval к переменной, и передать эту переменную в clearInterval,

Что-то вроде этого:

var interval = setInterval(someFunc, 100);
clearInterval(interval);

См. https://developer.mozilla.org/en-US/docs/Web/API/window.setInterval?redirectlocale=en-US&redirectslug=DOM%2Fwindow.setInterval для получения дополнительной информации.

Другие вопросы по тегам