var pauseButton = document.querySelector(".pause-button"),
start = Date.now(),
duration = 3000,
timePassed,
paused;
var timer = setInterval(change, duration);
pauseButton.addEventListener("click", function() {
if (!paused) {
clearInterval(timer);
timePassed = Date.now() - start;
paused = true;
} else {
setTimeout(function() {
timer = setInterval(change, duration);
}, duration - timePassed);
paused = false;
}
}, false);
function change() {
// ...
}
upd: Изначальный вариант был несколько некорректен - исправил.