2012-05-29 5 views
0

저는이 카운트 다운 기능을 반복하기 위해 반나절 동안 노력해 왔습니다. 다른 카운트 다운을 만들고 싶지 않습니다. 어떻게 반복할까요? 이 시간은 1 초 간격의 카운트 다운 타이머입니다. 내 사이트가 너무 카운트 다운 기능 내부 setInterval을 둘 필요가 여기 http://jian.comoj.com/타이머를 반복 할 수 있습니까?

<script type="text/javascript"> 

    setInterval('countdown()',1000); 

    function countdown(){ 

     var now = new Date(); 

     var unix_now= now.getTime()/1000; 

     unix_now= Math.floor(unix_now); 


     var sec = <?php echo $end_time[0]; ?> - unix_now; 


     if(sec<=0){ 
      clearInterval(stop); 

     } 



     var min = Math.floor(sec/60); 
     var hour = Math.floor(min/60); 

     hour %= 24; 
     min %= 60; 
     sec %= 60; 

     document.getElementById(0).innerHTML= hour+":"+min+":"+sec; 


    } 

    setInterval('countdown1()',1000); 

    function countdown1(){ 

     var now = new Date(); 

     var unix_now= now.getTime()/1000; 

     unix_now= Math.floor(unix_now); 


     var sec = <?php echo $end_time[1]; ?> - unix_now; 


     if(sec<=0){ 
      clearInterval(stop); 

     } 



     var min = Math.floor(sec/60); 
     var hour = Math.floor(min/60); 

     hour %= 24; 
     min %= 60; 
     sec %= 60; 

     document.getElementById(1).innerHTML= hour+":"+min+":"+sec; 


    } 

    setInterval('countdown2()',1000); 

    function countdown2(){ 

     var now = new Date(); 

     var unix_now= now.getTime()/1000; 

     unix_now= Math.floor(unix_now); 


     var sec = <?php echo $end_time[2]; ?> - unix_now; 


     if(sec<=0){ 
      clearInterval(stop); 

     } 



     var min = Math.floor(sec/60); 
     var hour = Math.floor(min/60); 

     hour %= 24; 
     min %= 60; 
     sec %= 60; 

     document.getElementById(2).innerHTML= hour+":"+min+":"+sec; 


    } 

</script> 
+0

줄'setInterval ('countdown()', 1000);은 이상적이지 않습니다. 그것은'eval()'이 차선책 인''coutndown() ''문자열에서 실행되게 할 것입니다. 대신 funstion 이름을'setInterval (countdown, 1000);'과 같이'setInterval()'에 넘겨 주어야합니다. 그렇지 않으면 대괄호를 제거해야합니다. 그렇지 않으면 함수를 실행 한 다음 함수에서 반환 된 값으로 바꿉니다. 하나입니다) – Grezzo

답변

0

입니다. 재귀 호출 같은 것.

관련 문제