Автор Озик задал вопрос в разделе Другие языки и технологии
ClearInterval не срабатывает может где ошибка? и получил лучший ответ
Ответ от Ra[гуру]
Так ты же после проверки и вызова clearInterval, таймер снова запускаешь, вот она и бесконечно идет. ... if (left == 100) { clearInterval(timer); // здесь может быть и остановил какой-то таймер alert(\'clearSuccess\'); } var timer = setInterval(frame, 1000); // а здесь опять запустил, причем новый ... Каждый раз у тебя создается новый таймер, который тоже начинает срабатывать, поэтому картинка сдвигается со все большей и большей скоростью. <script type=\"text/javascript\"> var left = 0; var timer; function frame() { left += 10; var elem = document.getElementById(\'left\'); elem.style.marginLeft = left + \"px\"; if (left >= 100) { clearInterval(timer); alert(\'clearSuccess\'); } } window.onload = function() { var click = document.getElementById(\'click\'); click.onclick = function () { timer = setInterval(frame, 100); } } </script> Ну и еще, ты не сообщил, какой результат в итоге ты хочешь получить, поэтому об этом можно только догадываться. Вопросы, связанные с ошибками в программе, лучше задавать так: Хотел сделать А, а получилось Б, вот код, что там может быть не верно?
А где задается timer?
Нa скoлькo пoмню обсуждали тут, юзай - виндовсфикс. ру
А где задается timer?
Нa скoлькo пoмню обсуждали тут, юзай - виндовсфикс. ру