我今天的目标是将一个类应用于嵌套数组中的所有元素,并等待1秒延迟,然后将同一个类应用于下一个嵌套数组的所有元素,并删除应用于上一个嵌套数组的类.目前,我的类已同时应用于所有嵌套数组的所有元素.这是我的代码所能做到的,因为我不知道如何继续.如果您有任何关于使用JavaScript或Jquery解决此问题的帮助,我们将不胜感激.

let sequencing = [["01-01", "02-01", "03-01"],["01-02", "02-02", "03-02"],["01-03", "02-03", "03-03"],["01-04", "02-04", "03-04"]];



// This loop is for outer array
for (let i = 0;  i < sequencing.length; i++) {

    // console.log(sequencing[i]);
  

// This loop is for inner-arrays
  for (var j = 0; j < sequencing[i].length; j++) {

    //console.log(sequencing[j]);

    // Accessing each elements of inner-array
    $("#"+sequencing[i][j]).addClass("up");
   
  }  
 }

推荐答案

要执行所需操作,可以使用setTimeout()将类的添加延迟nIteration * 1000毫秒.您还可以使用removeClass()从上一组元素中删除该类.

另请注意,在下面的示例中使用了forEach(),以使代码更加简洁.

let sequencing = [["01-01", "02-01", "03-01"],["01-02", "02-02", "03-02"],["01-03", "02-03", "03-03"],["01-04", "02-04", "03-04"]];

sequencing.forEach((arr, i) => {
  setTimeout(() => {
    $('.up').removeClass('up');
    arr.forEach(id => $('#' + id).addClass('up'));
  }, i * 1000);
});
.up {
  background-color: #C00;
  color: #FFF;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>

<div id="01-01">01-01</div>
<div id="02-01">02-01</div>
<div id="03-01">03-01</div>

<div id="01-02">01-02</div>
<div id="02-02">02-02</div>
<div id="03-02">03-02</div>

<div id="01-03">01-03</div>
<div id="02-03">02-03</div>
<div id="03-03">03-03</div>

<div id="01-04">01-04</div>
<div id="02-04">02-04</div>
<div id="03-04">03-04</div>

Javascript相关问答推荐

我可以获取所有包含@的超链接,然后在新选项卡中打开它们吗?

为什么剧作家在导航时会超时?

文件阅读器未读取一个文件

即使设置了父级的最大高度,固定位置的分区内容也不会滚动?

如何使用Paged.js仅渲染特定页面

我的glb文件没有加载到我的three.js文件中

我不知道为什么我的JavaScript没有验证我的表单

WebRTC关闭navigator. getUserMedia正确

如何使覆盖div与可水平滚动的父div相关?

用JavaScript复制C#CRC 32生成器

在我的html表单中的用户输入没有被传送到我的google表单中

显示图—如何在图例项上添加删除线效果?

如何调用名称在字符串中的实例方法?

在使用位板时,如何在Java脚本中判断Connect 4板中中柱的对称性?

如何在.NET Core中将chtml文件链接到Java脚本文件?

有效路径同时显示有效路径组件和不存在的路径组件

Next.js中的服务器端组件列表筛选

无法读取未定义的属性(正在读取合并)-react RTK

在验证和提交表单后使用useNavigate()进行react 重定向,使用带有加载器和操作的路由

Jexl to LowerCase()和Replace()