Ответы выше уже объяснили, как setInterval возвращает дескриптор и как этот дескриптор используется для отмены таймера интервала.
Некоторые архитектурные соображения:
Пожалуйста, не используйте переменные "scope-less". Самый безопасный способ - использовать атрибут объекта DOM. Самым простым местом был бы «документ». Если освежитель запускается кнопкой пуска / остановки, вы можете использовать саму кнопку:
<a onclick="start(this);">Start</a>
<script>
function start(d){
if (d.interval){
clearInterval(d.interval);
d.innerHTML='Start';
} else {
d.interval=setInterval(function(){
//refresh here
},10000);
d.innerHTML='Stop';
}
}
</script>
Поскольку функция определена внутри обработчика нажатия кнопки, вам не нужно определять его снова. Таймер можно возобновить, если снова нажать кнопку.