javascript - foreach循环的每次迭代之间的延迟?

标签 javascript jquery

所以我正在制作一个 simon says 游戏。此函数显示当前序列。它现在的问题是它并没有真正按照一个好的顺序进行,它有点同时做所有事情。假设颜色是“蓝色”、“红色”和“黄色”,它们将同时熄灭而不是按顺序熄灭。我该如何解决这个问题?

var displaySequence = function(){
    compSequence.forEach(function(color){
        $("#" + color).fadeTo(300, 0.5).fadeTo(300, 1.0);
    })
}

最佳答案

一个没有 jQuery 的解决方案。您将需要使用数组索引在每次调用之间产生等待的错觉,但是每个函数都已经运行。会发生的是:1 秒显示颜色 1,2 秒显示颜色 2...

var displaySequence = function(){
    compSequence.forEach(function(color, index){
        setTimeout(function(){
            $("#" + color).fadeTo(300, 0.5).fadeTo(300, 1.0);
        },
        1000 * index);
    })
}

调整 1000 * 索引以更改延迟。

关于javascript - foreach循环的每次迭代之间的延迟?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36706861/

相关文章:

Javascript onclick 表单验证

javascript - 输入按钮使用 svg 而不是文本

javascript - 使用 websocket 的 gRPC 替代方案?

javascript - 如何使用blueimp jquery上传插件获取每个 block 的md5迭代md5和

javascript - 不属于特定类的 JQuery 复选框选择器

c# - 重新绑定(bind)时我应该使用 Jquery- $.remove() 吗?

javascript - 您从哪里获得与 timezone-js 一起使用的 Olson 时区数据库文件?

javascript - 将变量值插入ajax post数据

javascript - 使用 jquery 将图像 API src 转换为 <img>

javascript - 在声明 css 类或 html div 时使用变量