【发布时间】:2022-01-01 19:21:12
【问题描述】:
我想在 css 中制作一些带有淡入淡出效果的幻灯片。一切正常,使用 setInterval javascript 方法在 3 秒内显示图像,但仅使用淡入动画显示第一张图像。
.slide {
position: absolute;
height: 100vh;
width: 66vw;
animation: fadeIn 1s;
}
@keyframes fadeIn {
0% {
opacity: 0;
}
100% {
opacity: 1;
}
}
<img class="slide" src="https://static.vecteezy.com/packs/media/components/global/search-explore-nav/img/vectors/term-bg-1-666de2d941529c25aa511dc18d727160.jpg">
HTML 中只添加了一个 jpg,并且编写了 javascript 代码来替换文件路径
<img class="slide" src="1.JPG">
转“2.jpg”、“3.jpg”等
只有第一张图片有动画,后面显示的都是没有动画的。
当我检查控制台时,所有下一个图像仍然具有 .slide 类及其所有属性位置/宽度/高度/动画,但它们显示时没有动画。
有什么想法吗?
【问题讨论】:
-
我给你做了一个sn-p。请将其更新为minimal reproducible example
-
由于您只是更改了
img的属性(即src),而不是替换元素本身,因此动画不会再次运行。 -
无法加载我的 js 代码,出了点问题。对不起mplungjan,我下次发帖前会尝试练习。并感谢 FZ 的回复,我会尝试将所有图像添加到 html 然后替换整个元素。
标签: javascript html css animation