Как получается, это работает правильно:
var slideshow_action;
function start_interval() {
if (slideshow_action) {
clearInterval(slideshow_action);
}
slideshow_action = setInterval(slider_flip, 5000);
}
function stop_interval() {
clearInterval(slideshow_action);
}
, но это приводит к нескольким интервалам, запускающимся после того, как вы наведите указатель мыши на элемент, который включает эти две функции (start_interval также запускается при загрузке страницы один раз):
function start_interval() {
if (slideshow_action) {
clearInterval(slideshow_action);
} else {
var slideshow_action;
}
slideshow_action = setInterval(slider_flip, 5000);
}
function stop_interval() {
clearInterval(slideshow_action);
}
Я также заметил, что мне действительно нужен этот clearInterval в функции запуска, иначе результат такого же рода. Почему новый интервал, который я объявляю, «перезаписывает» то, что в данный момент выполняется?