2012-10-23 2 views
2

서버에서 데이터를 가져 와서 매 5 초마다 AJAX에서 자체적으로 업데이트되는 웹 페이지가 있습니다. 그러나 사용자가 적극적으로 페이지를 볼 때만 업데이트를 수행하고 싶습니다.사용자가 웹 페이지를 적극적으로보고 있는지 확인

사용자가 다른 탭, 브라우저가 아닌 다른 프로그램 또는 다른 페이지에서 사용자 PC의 주 활성 페이지가 아닌 경우 업데이트가 수행되지 않아야합니다.

이것을 테스트하는 가장 정확하고 크로스 브라우저가되는 방법은 무엇입니까?

+0

이 답변 중 하나가 작동 했는가를? –

답변

1

는 여기에 솔루션입니다 :

비록 프레임에서 작동하지 않습니다

(function(){ 
var itl=null; 
window.onfocus=function(){itl=window.setInterval(/*heartbeat function*/,5000);}; 
window.onblur=function(){if(itl){window.clearInterval(itl);}};//stop heartbeat 
})(); 
, 독립 실행 형 탭에서 테스트해야합니다.

관련 문제