Управление методом setInterval() ограничено и есть только функция clearInterval()
для полной отмены повторения действий. Но setInterval()
можно как бы приостановить с помощью переменной.
var isPaused = false;
window.setInterval(function(){
if(!isPaused){
/* Выполняемый код... */
}
}, 1000);
/* Остановить */
$('#pause').on('click', function(){
isPaused = true;
});
/* Продолжить */
$('#play').on('click', function(){
isPaused = false;
});
Пример:
var isPaused = false;
window.setInterval(function(){
if(!isPaused){
/* Выполняемый код... */
}
}, 1000);
$('#pause').on('click', function(){
if(!isPaused){
isPaused = true;
} else {
isPaused = false;
}
});
Пример:
var isPaused = false;
window.setInterval(function(){
if(!isPaused){
/* Выполняемый код... */
}
}, 1000);
/* Остановить на 5 секунд */
$('#pause-5').on('click', function(){
if(!isPaused){
isPaused = true;
setTimeout(function(){
isPaused = false;
}, 5000);
}
});
/* Остановить на 10 секунд */
$('#pause-10').on('click', function(){
if(!isPaused){
isPaused = true;
window.setTimeout(function(){
isPaused = false;
}, 10000);
}
});