@MrJobs

SetInterval во время выполнения?

Подскажите, возможно ли при выполнении setinterval добавить например затемнение блоку, снять затемнение после выполнения?
  • Вопрос задан
  • 54 просмотра
Пригласить эксперта
Ответы на вопрос 3
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Да, возможно.
Но только, если использовать рекурсивный вызов с переменной цикла и затемнения.
Читайте здесь.
Ответ написан
dollar
@dollar
Когда выполняется код, на странице ничего не рендерится.

Как только код преврался или закончил выполнение, то перед передачей управления другому асинхронному коду может произойти (а может и не произойти) куча событий, в том числе обновляется страница в соответствии со сделанными изменениями в ней.

Так что во время первой итерации setInterval (или перед созданием setInterval) нужно затемнить блок. Не важно, в начале и в конце функции это делать, отрисовка начнется только после выхода из функции. А в последней итерации setInterval, соответственно, нужно убрать затемнение.
Ответ написан
hzzzzl
@hzzzzl
block.classList.add('zatemnit')

setTimeout(func, 3000)

function func() {
  console.log('ya timeout')
  block.classList.remove('zatemnit')
}


не совсем понятно, что хочется сделать с setInterval, туда-обратно затемнять и убирать затемнение каждый раз?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы