2012-08-07 6 views
1

표시 될 때 어떤 작업을 수행하는 앱을 만들려고합니다. 사라지면 다른 작업을 수행합니다. 이것은 일반적으로 페이지 가시성 API (http://css.dzone.com/articles/using-html5s-pagevisibility)로 수행되지만 현재 Windows 8에서는 지원되지 않습니다. http://msdn.microsoft.com/en-us/library/ie/hh673553(v=vs.85).aspxJS Windows8 메트로 앱이 표시되는지 여부를 알려주는 방법

onactivated 콜백 및 oncheckpoint가 있지만 이것들은 프로세스 라이프 사이클을위한 것이며 앱 가시성과 반드시 ​​관련이있는 것은 아닙니다. 특히, 앱이 일시 중지되기 전에 상당 기간 동안 백그라운드로 이동할 수 있습니다.

도움을 주시면 감사하겠습니다.

- 헨리

+0

내가 링크에서 무엇을 언급하는지 잘 모르겠습니다. 이 기능은 OS가 아니라 브라우저와 아무 관련이 없으며 반대로 IE10에서는 지원됩니다. 귀하의 질문에 대한 답변으로, 귀하가 어울리는 경우 창 포커스/흐려짐으로 뒤로 물러 설 수 있습니다. – davin

+0

절대적으로 지원되며 작동합니다. 나는 당신이 제안한 이유들에 대한 나의 신청서에 그것을 사용한다. 접두어가 붙은 win8의 이전 버전에 있지 않습니까? (msHidden 속성 및 msvisibilitychange 이벤트) –

답변

5

나는 당신이 visibilitychange 이벤트를 원하는 생각합니다. Document 설명서 here을 참조하십시오. 응용 프로그램 수명주기 이벤트에 대한 자세한 내용 here. 다른 응용 프로그램에 대한 귀하의 응용 프로그램에서 사용자 스위치, 앱이 더 이상 표시되지 않습니다하지만 때까지 실행 상태로 유지하면

앱 가시성

윈도우 (약 10 초)를 일시 중단 할 수 있습니다 . 사용자가 을 앱에서 전환했지만 활성화하거나 다시 전환하기 전에 이 앱을 일시 중지 할 수있는 경우 앱은 실행 상태로 유지됩니다.

앱이 아직 실행 중이므로 앱 표시가 변경되면 앱이 활성화 이벤트를 수신하지 않습니다. Windows는 단순히 으로 필요에 따라 앱간에 전환합니다. 사용자가 을 멀리두고 뒤로 전환 할 때 앱에서 무엇인가해야한다면 VisibilityChanged | msvisibilitychange 이벤트.

가시성 이벤트는 이력서 또는 활성화 이벤트와 함께 일련 화되지 않습니다. 이러한 이벤트가 특정 순서로 이라고 가정하지 마십시오.

-1

앱 포커스 스위치를 추적하려면 window.onblurwindow.onfocus을 사용할 수 있습니다. 특히 멀티 몬 환경에서 유용합니다.

+0

OP는 포커스가 아니라 가시성에 관심이 있다고합니다. –

관련 문제