gpt4 book ai didi

javascript - 如何在另一个动画完成后激活一个动画

转载 作者:行者123 更新时间:2023-11-28 01:13:26 25 4
gpt4 key购买 nike

我有一个代码片段(如下),当您滚动到它时,我想对其进行动画处理。它正在工作,但是为圆圈设置动画的类同时激活,这使得它看起来不对。我怎样才能让圆圈正常填满而不是在两个单独的动画中?我是否需要为此延迟,如果我添加延迟然后更改百分比会发生什么?那么延迟会关闭吗?

我正在使用 wow.js在滚动上激活它。

如果您想编辑 codepen相反,因为我为此使用了 SCSS,但显然不能将其包含在我的代码片段中。

var wow = new WOW({
animateClass: 'fill'
});
wow.init();
#sample-text {
width: 20%;
}

.circle-wrap {
width: 150px;
height: 150px;
background: #ddd;
border-radius: 50%;
}

.circle-wrap .fill {
width: 150px;
height: 150px;
position: absolute;
border-radius: 50%;
}

.circle-wrap .mask {
width: 150px;
height: 150px;
position: absolute;
border-radius: 50%;
clip: rect(0px, 150px, 150px, 75px);
}

.circle-wrap .fill {
clip: rect(0px, 75px, 150px, 0px);
background-color: #00B16A;
}

.circle-wrap .circle .mask.full,
.fill {
animation: fill ease-in-out 3s;
transform: rotate(170deg);
}

@keyframes fill {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(170deg);
}
}

.circle-wrap .inside-circle {
width: 130px;
height: 130px;
border-radius: 50%;
background: #fff;
line-height: 130px;
text-align: center;
margin-top: 10px;
margin-left: 10px;
position: absolute;
z-index: 100;
font-weight: 700;
font-size: 2em;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/wow/1.1.2/wow.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="sample-text">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor
in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed
do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu
fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna
aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat
non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation
ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit
anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
</div>

<div class="circle-wrap">
<div class="circle">
<div class="mask full">
<div class="fill wow"></div>
</div>
<div class="mask half">
<div class="fill wow"></div>
</div>
<div class="inside-circle">
95%
</div>
</div>
</div>

最佳答案

你可以像这样给动画添加延迟

animation: fill 3s ease-in-out 1s;

其中 1s 是延迟

关于javascript - 如何在另一个动画完成后激活一个动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51984677/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com