javascript - JS 动画循环过渡
问题描述
var i = 1;
const title = document.getElementById("display-heading");
var texts = [
"Karibu",
"Bienvenido",
"স্বাগতম।",
"Willkommen",
"أهلا بك",
"Bienvenue"
];
title.textContent = texts[0];
var loop = setInterval(function() {
title.textContent = texts[i];
i = (i+1) % texts.length; // Allows the array to loop
}, 1000);
我将如何添加淡入/减慢过渡?
解决方案
CSS 和 HTML 之间有一点差异:HTML 有一个名为“display-heading”的id属性,而 CSS 为具有该名称的类定义属性。
您可以通过更改不透明度来进行褪色。
这是一个可运行的片段:
const title = document.getElementById("display-heading");
var texts = [
"Karibu",
"Bienvenido",
"স্বাগতম।",
"Willkommen",
"أهلا بك",
"Bienvenue"
];
title.addEventListener("transitionend", loop);
function loop() {
if (title.style.opacity != "1") {
texts.push(title.textContent = texts.shift());
title.style.opacity = 1;
} else {
setTimeout(() => title.style.opacity = 0, 500);
}
}
setTimeout(loop);
#display-heading{
font-size: 30px;
transition: 0.5s opacity;
opacity: 0;
}
<h1 id='display-heading'>Welcome</h1>
推荐阅读
- julia - 为什么 Julia Int64、Float64 和 boolean 支持 getindex
- c# - 如何使用 C# 代码直接打印水晶报表
- android - 尝试调用资源中的虚方法 res = getResources(); 当我尝试设置背景颜色时
- yii2 - 有没有办法在 yii2 的 Datacolumn 中将“主题”放入函数中:mailto ?
- node.js - 循环遍历大型JSON中的项目,修改它们并将它们一一插入到mongodb中的集合中的正确方法
- python - 重复的键值违反了唯一约束 - 尝试从 dask 数据帧创建 sql 表时出现 postgres 错误
- javascript - 通过字符串属性值查找对象数组中最长的字符串
- java - 如何在 Java 中使用蛇 yaml 序列化具有自定义名称的字段
- python - 如何对数字后缀进行正则表达式?
- php - PHP:将 URL 路由到静态页面/资源