在前端开发中,可以通过以下方式在点击时启动CSS动画并在第二次点击时反转运行动画:
@keyframes slide-left {
0% { transform: translateX(0); }
100% { transform: translateX(-100%); }
}
.button {
animation: slide-left 1s linear forwards;
}
上述代码将按钮应用了一个向左移动的动画,持续时间为1秒,匀速运动,并且在动画结束后保持最后一个关键帧的状态(使用forwards
属性)。
active
的CSS类:var button = document.querySelector('.button');
button.addEventListener('click', function() {
if (button.classList.contains('active')) {
button.classList.remove('active');
} else {
button.classList.add('active');
}
});
animation-direction
属性来控制动画的方向。例如,定义一个反转的动画:@keyframes slide-left-reverse {
0% { transform: translateX(-100%); }
100% { transform: translateX(0); }
}
.button.active {
animation: slide-left-reverse 1s linear forwards;
}
上述代码将在按钮具有active
类时应用反转的动画,使按钮向右移动回初始位置。
综上所述,通过在点击事件中添加/删除CSS类来切换动画的应用,可以实现在点击时启动CSS动画并在第二次点击时反转运行动画的效果。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云