javascript - 如何通过数组无限循环切换类列表?

标签 javascript arrays loops

我试图在 3 个 H1 元素上获得循环/循环效果,为每个 H1 显示紫色字体颜色几秒钟,然后更改为第一个 H1 正下方的另一个 H1。

我希望这种效果是无限的,我考虑过使用 for loopsetInterval 但我无所适从。

setInterval(changeColorLoop(), 2000);

function changeColorLoop() {
  const titleArtArray = document.querySelectorAll(".art-text");

  for (var i = 0; i < titleArtArray.length; i++) {
    titleArtArray[i].classList.toggle = ".purple";
  }
}



  <div class="art-column">
                <h1 class="art-text">Think</h1>
                <h1 class="art-text">Design</h1>
                <h1 class="art-text">Code</h1>
              </div>


.purple {
  color: purple;
}

最佳答案

这让“动画”开始了。需要一点点抛光。编辑:抛光,感谢@jeanjacquesgourdin。编辑 2:添加了一些 CSS 过渡

let index = 0;

function changeColorLoop() {
  const titleArtArray = document.querySelectorAll(".art-text");

  titleArtArray[index % 3].classList.toggle("purple");
  titleArtArray[(index + 1) % 3].classList.toggle("purple");
  index++
}

setInterval(changeColorLoop, 1000);
.art-text {
  transition: all 1000ms ease-in-out;
}

.purple {
  color: purple;
}
<div class="art-column">
  <h1 class="art-text purple">Think</h1>
  <h1 class="art-text">Design</h1>
  <h1 class="art-text">Code</h1>
</div>

关于javascript - 如何通过数组无限循环切换类列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72764661/

相关文章:

javascript - 如何使用 Google Closure Compiler 在 JavaScript 中检测 Internet Explorer?

Python 在数组中插入缺失的元素

javascript - 如何在加载 collada 纹理时调用函数? (三.js)

javascript - jCrop - 更新预览加载?

java - 从Java中的多维数组获取未知数量的维度

c++ - 如何从 Qt 中的资源文件重复/循环播放声音?

php - 使用 PHP 计算圆周率

linux - 使用 bash 脚本提取文件——发生错误

javascript - 在 knockout 中的 ajax put 或 post 期间自动映射 ajax 数据

arrays - 直接通过 Evaluate 检索一维数组的值