Как начать setInterval с того же места?
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: Изначальный вариант был несколько некорректен - исправил.
Не нужно вызывать clearInterval, просто делайте return из change если paused === true.