2013-05-15 3 views
0

두 가지 유형의 카운트 다운 타이머가 필요한 JQuery로 작은 게임을 만들고 있습니다. 각 게임은 각 레벨의 게임에서 재사용 할 것이므로 분명히/재설정해야합니다. 원래 값으로JQuery로 한 페이지의 여러 카운트 다운 타이머

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

내가 도달하지 않고이 작업을 수행하기 위해 애 쓰고 키스 우드 플러그인 내가 다른 게임 관련 잔뜩 카운트 다운 기능에 어떤 일이 일어나고 그래서 투명 대를 유지하려는 때문에 나. 나는 단순히이 타이머 두 내가 수학 wackyness의 모든 종류를 얻을 복제하려고하면 물론

//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); 
    } 

:

다음은 잘 작동 타이머 하나입니다. 누구나 내 페이지에 두 카운트 다운을 갖게하거나 비슷한 일을하는 데모를 가르쳐 줄 수있는 구조 조정을 제안 할 수 있습니까?

+0

문제는 그들이 실제로 사용자가 지정한 정확한 간격으로 실행되지 않습니다이다. 더 정확하게하려면 간격 시간을 줄이고 Date 객체를 사용하여 시간을 비교하십시오. 그런 다음 단일 간격으로 두 타이머를 모두 처리 할 수 ​​있습니다. –

답변

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); 
}