Ingernirated
@Ingernirated
Романыч

Как в js создается @keyframe?

Как в js создать @keyframe и добавить анимацию к элементу?
И если надо выполнить 2 анимации на двух элементах, как сделать так, чтобы 2-ая начала выполняться только тогда, когда первая закончилась?
animation: move 0.5s ease;
@keyframes move{
	from{top:-10%;}
	to{20%;}
}

var e1 = document.querySelector(".e1");
var e2 = document.querySelector(".e2");
  • Вопрос задан
  • 4351 просмотр
Решения вопроса 2
zoonman
@zoonman
⋆⋆⋆⋆⋆
Комментировать
сделать так, чтобы 2-ая начала выполняться только тогда, когда первая закончилась

<br><button id="b1">Botton1</button>
<br><button id="b2">Botton2</button>

<style>
  button {
    transition-property: background-color;
    transition-duration: 3s;
  }
</style>

<script>
  function repaint(id){
  	let el=document.getElementById(id);
  	if(!el.style.backgroundColor){ el.style.backgroundColor = 'red'; return;}
  	if(el.style.backgroundColor === 'red'){ el.style.backgroundColor = 'blue'; return;}
  	if(el.style.backgroundColor === 'blue'){ el.style.backgroundColor = 'red'; return;}
  }

  window.addEventListener('load', ()=>{
  	repaint('b1');
  });

  document.getElementById('b1').addEventListener('transitionend', ()=>{
  	repaint('b2');
  });

  document.getElementById('b2').addEventListener('transitionend', ()=>{
  	repaint('b1');
  });

</script>
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы