Показать сообщение отдельно
  #3 (permalink)  
Старый 20.02.2017, 12:28
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

Hur_ley,
Сообщение от Hur_ley
Если нажать на кнопку, после первого сигнала, то есть, когда функция отрисовки будет выполняться внутри setInterval, то выключится только таймер, а полоса все равно продолжает рисоваться, почему так?
Потому что clearInterval останавливает соответствующий таймер, а запущенную функцию draw(timePassed) не останавливает.
В этом примере подождите немного, чтобы начали появляться цифры, и нажмите Стоп
<button id="stop">Стоп</button>
<div id="cont"></div>

<script>
var i = 0;
var interval = setInterval(function() {
       startCount(++i);
},2000);
function startCount(indx) {
   var divCount = document.createElement('div');
   divCount.id = "count" + indx.toString();
   cont.appendChild(divCount);
   var j = 0;
   var start = setInterval(function() {divCount.innerText = ++j},1000);
}
document.getElementById("stop").onclick = function() {
 
  clearInterval(interval);
}
</script>

Последний раз редактировалось Dilettante_Pro, 20.02.2017 в 12:32.
Ответить с цитированием