【发布时间】:2015-09-28 11:38:24
【问题描述】:
您好,我是编程新手,正在开发 JavaScript 时钟。我让它根据它是偶数还是奇数分钟来改变背景颜色,它每小时改变一次文本颜色。但是,我在集成第三个任务时遇到了麻烦:我试图让它每五分钟更改一次随机颜色,从而覆盖偶数或奇数语句。所以第 1 分钟:奇数,第 2 分钟:偶数,3:奇数,4:偶数,5:随机颜色。
由于每五分钟更改一次背景颜色的功能 (lines 75 to 83) 设置在一个间隔上,这与为获取日期设置的间隔 (line 71) 冲突。
就目前而言,任务 2 和 3 的效果在任务 1 被注释掉之前是不可见的。有没有办法将任务 1 与第 11-24 行的 if/else 语句结合起来,以便我的所有任务可以同时运行?
【问题讨论】:
-
你能展示你的代码吗?
-
代码的相关部分必须发布到您的实际问题中,不能仅通过外部链接获得。这是 StackOverflow 的一条规则,因为外部链接会随着时间的推移而消失或变化,从而使问题随着时间的推移变得无用。
-
你不应该使用 setInterval 因为它不需要在你指定的时间运行,所以每次运行都会稍晚一点(可能是纳秒,可能是毫秒,可能更多的)。使用 setTimeout 并计算每次下一次调用的时间。另外,不要设置多个间隔或超时,使用一个超时按要求的顺序运行所有逻辑。
标签: javascript setinterval clock