2013-07-18 6 views
0

저는 html 5 및 jquery를 사용하여 응용 프로그램에 타이머를 설정했습니다. 이제 다른 탭으로 이동하거나 창을 최소화하면 몇 초 동안 타이머가 멈 춥니 다. 그리고 다시 윈도우 (탭 또는 브라우저 페이지, u가 무엇이든간에)를 열면 타이머가 시작됩니다. 그러나 그 초 동안 멈추게됩니다. 문제는 무엇이되어야합니까? 어떤 코드를 작성해야합니까? 타이머를 얻기를위한다른 화면으로 이동하면 타이머가 자동으로 일시 중지됩니다.

코드는 다음과 같습니다

여기

타이머가 설정되고 그것을 실행하지만 최대한 빨리 다른 페이지 내 포커스를 이동로, 타이머가 일시 중지됩니다. 함수가 여기에 표시됩니다.

function showTime() 
{ 
    if(ms>=100){ 
     ms = 0; 
     s++; 
    } 
    // calculates seconds and hours also 

    var temp= $("#clock").text(checkTime(h)+":"+checkTime(m)+":"+checkTime(s)+"."+checkTime(ms)); 
    timer=setTimeout('showTime()', 10); 
} 

checktime은 고정 된 간격으로 호출되는 단지 숫자 10

+0

1) 쇼 코드. 2) 타이머를 사용하여 정확하게 실행할 수는 없습니다. 당신이 그것을 필요로하는 경우, 시간이 지나면, setInterval 또는 setTimeout에 의존하기보다는 오랜 시간을 테스트 할 필요가있는 날짜를 얻으십시오. – mplungjan

+0

@mplungjan 코드를 추가했습니다. – user2387900

+0

StackOverflow에 관한 많은 게시물이 있습니다. [이] [1] 예를 들면. [1] : http://stackoverflow.com/questions/12536627/javascript-countdown-timer-that-stops-when-window-is-not-in-focus –

답변

0

당신이 기능을 원하는 < 앞에 0을 추가 기능 사용 setInterval

setInterval(showTime, 10);//calls showTime every 10 miliseconds 
+0

아니요, 작동하지 않고 초가 ​​매우 빠르며 정지 코드로도 멈 춥니 다. – user2387900

+0

1 초에 1000ms가 있습니다. 100 – raam86

+0

아니지만 다른 화면으로 이동하면 타이머가 멈추고 나중에 다시 시작됩니다. – user2387900

관련 문제