JavaScript时钟:时间间隔冲突
JavaScript clock: time interval conflicts
嗨,我是编程新手,正在开发JavaScript时钟。我让它根据是偶数分钟还是奇数分钟来改变背景颜色,它每小时都会改变文本颜色。然而,我在整合第三个任务时遇到了麻烦:我试图每五分钟将其更改为随机颜色,从而覆盖偶数或奇数语句。第1分钟:奇数,第2分钟:偶数,第3分钟:奇数,第4分钟:偶数,第5分钟:随机颜色。
因为每五分钟更改一次背景颜色的函数(第75行到83行)设置了一个间隔,这与获取日期的间隔设置(第71行)冲突。
现在,在Task 1被注释掉之前,Tasks 2和3的效果是不可见的。是否有一种方法可以将Task 1与第11-24行中的if/else语句结合起来,这样我的所有任务都可以并发运行?
使用单个计时器函数执行所有事件。要获得更精确的计时,请将计时器设置为每100毫秒执行一次,并保持一个计数器。根据计数器的值,您可以以不同的间隔执行特定的任务,还可以检查间隔的重叠。当计数器达到需要跟踪的最大间隔时,可复位。
示例:
var counter = 0;
var oldsec = 0;
setInterval(function(){timerInt()}, 100);
function timerInt(){
// Read system clock and get seconds
if (seconds <> oldsec) {
// Update clock time here and set oldsec=seconds
}
// Execute other tasks
if (counter % 3000 == 0) { // Executes once every 5 minutes (300*10)
}
else if (counter % 1200 == 0) { // Executes once in 2 minutes (120*10)
}
else if (counter % 600 == 0) { // Executes once a minute (60*10)
}
counter += 1;
if (counter == 3000) counter = 0;
}
您可以使用if
和else
来控制执行哪些任务。你的时钟秒更新也会更准确,不会像1000毫秒的计时器那样"跳过"秒。
相关文章:
- Java脚本时间添加
- Json数据包含日期和时间格式
- 如何根据时间运行不同的脚本
- 用每小时的差值填充数组/列表-从下拉列表中给定两个时间值
- 在wordpress一定时间后更改自定义字段
- 更改angularjs中的日期-时间格式
- 将当前时间添加到我的页面上的特定部分
- 门户网站:当地时间有多有用
- 显示时间的脚本
- 如何在窗体打开时从javascript倒计时计时器值中节省时间
- 通过JSON&比较时间
- Javascript时间轨迹
- 将日期时间作为 JSON 发送将无法在我的视图中正确显示
- 将日期时间从json转换为可读格式
- 高库存时期时间与时区不匹配
- Jquery如何检查今天的时间大于使用给定时间
- 检查时间冲突,只想显示 1 个警告
- 确定时间范围的回调函数彼此之间不冲突
- JavaScript时钟:时间间隔冲突
- 如何处理时间冲突