@MrJobs

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

Подскажите, возможно ли при выполнении setinterval добавить например затемнение блоку, снять затемнение после выполнения?
  • Вопрос задан
  • 71 просмотр
Пригласить эксперта
Ответы на вопрос 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, туда-обратно затемнять и убирать затемнение каждый раз?
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы
23 нояб. 2024, в 21:53
30000 руб./за проект
23 нояб. 2024, в 21:49
1000 руб./в час
23 нояб. 2024, в 20:48
40000 руб./за проект