我有一个关键帧动画与多个步骤:
@keyframes rotateLeftSideCustom { 0% { } 40% { -webkit-transform: rotateY(-15deg); transform: rotateY(-15deg); opacity: .8; -webkit-animation-timing-function: ease-out; animation-timing-function: ease-out; } 100% { -webkit-transform: scale(0.8) translateZ(-200px); transform: scale(0.8) translateZ(-200px); opacity: 0; } } .section-animation { -webkit-transform-origin: 100% 50%; transform-origin: 100% 50%; -webkit-animation: rotateLeftSideCustom 0.6s both ease-in; animation: rotateLeftSideCustom 0.6s both ease-in; }
有什么办法可以使用JavaScript来设置动画的进度吗?
例如:
document.querySelector('.section-animation').animationState('40%');
解决方法
我得到的是正确的,你想开始的动画不是0%,而是40%?
有一种方法可以通过使用负值进行动画延迟来做CSS
.section-animation { animation-delay: -0.24s; /*40% of 0.6s */ }
此外,您可能需要添加
.section-animation { animation-play-state: paused; }
到您的元素,以便您可以将动画的状态视为静态图像,而不是动画.
这里有一个链接:https://css-tricks.com/starting-css-animations-mid-way/
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。