【发布时间】:2019-10-23 16:20:35
【问题描述】:
我有这个问题,我试图用javascript实现一个简单的CSS转换,当按下start按钮时,它会根据关键帧的持续时间移动和停止,然后当end被点击时,当用相同的动画按下开始时,它会消失,然后再次出现。
有人知道这里可能是什么问题吗?并且由于某种原因,当过渡结束时,它会跳到角落。
function add()
{
document.getElementById("myAnimation").classList.add("run-animation");
}
function remove()
{
document.getElementById("myAnimation").classList.remove("run-animation");
}
body{
background-color: "#4287f5";
}
#myAnimation
{
position:relative;
height: 40px;
width: 40p;
}
.run-animation
{
-webkit-animation: move 6s;
animation: move 6s;
}
@-webkit-keyframes move
{
0% {left: -200px;}
25% {left: 200px;}
50% {left: 100px;}
}
@keyframes move
{
0% {left: -200px;}
25% {left: 200px;}
50% {left: 100px;}
}
<button onclick="add()">Start</button>
<button onclick="remove()">End/Remove</button>
<div id="myAnimation" class="run-animation"><img src="https://cdn1.imggmi.com/uploads/2019/10/23/6e17286b0e01cf2775e6fa81a07d1ae3-full.png" /></div>
【问题讨论】:
-
你没有在关键帧中提到动画完成即100%,你可以添加
100% { left: 0; } -
当我们使用关键帧时,我们应该为给定的要求提供完整的断点。你检查这个链接:codepen.io/t3veni/pen/YzzZZRO
标签: javascript html css css-transitions css-animations