0

我在 JQuery 中创建了一个小游戏,它需要两种类型的倒数计时器,每一种都将在游戏的每个级别上重复使用,因此需要清除/重新设置为原始值。

 -Timer One: Countdown from 5 seconds then call gameLevel.
 -Timer Two: Countdown from 60 seconds and then call levelOver.

我试图在不使用 Keith Wood 插件的情况下做到这一点,因为我在倒计时功能中有很多其他与游戏相关的东西,所以我想让它对我尽可能透明。

这是计时器一,它工作正常:

//5 second countdown to game start
var counter=setInterval(levelStartTime, 1000);
var $level_start_time = 5;

function levelStartTime() {
    $level_start_time = $level_start_time-1;
    if ($level_start_time <= 0)
      {
        clearInterval(counter);
        gameLevel($level);
        return;
      }
    $('.level-start-time span').text($level_start_time);
  }

当然,如果我尝试简单地为计时器二复制它,我会得到各种数学古怪。任何人都可以建议进行重组,让我的页面中有两个倒计时,或者将我指向一个做类似事情的演示?

4

1 回答 1

0

就像Kevin B评论的那样,你可以做一些事情,比如使用一个小的间隔时间:

var counter = setInterval(levelStartTime, 100); // Small interval.
var $level_start_time = new Date(date.getTime() + 5000);

function levelStartTime() {
    if ($level_start_time >= date.getTime())
    {
        clearInterval(counter);
        gameLevel($level);
        return;
    }
    $('.level-start-time span').text($level_start_time);
}
于 2013-05-15T18:57:20.180 回答