1

我正在尝试创建一个应用程序,该应用程序在它变得可见时会做一些工作,而在它消失时会做其他工作。这通常通过页面可见性 api (http://css.dzone.com/articles/using-html5s-pagevisibility) 完成,但 Windows 8 目前不支持:http: //msdn.microsoft.com/en-我们/图书馆/ie/hh673553(v=vs.85).aspx

有 onactivate 和 oncheckpoint 回调,但它们是针对流程生命周期的,不一定与应用程序可见性相关。具体来说,一个应用程序可以在暂停之前进入后台相当长的一段时间。

任何帮助,将不胜感激。

——亨利

4

2 回答 2

5

我认为您想要visibilitychange事件。请参阅此处Document的文档。更多关于应用程序生命周期事件的信息

应用可见性

当用户从您的应用切换到另一个应用时,您的应用不再可见,但仍处于运行状态,直到 Windows 可以将其挂起(大约 10 秒)。如果用户离开您的应用但在 Windows 可以挂起它之前激活或切换回它,则该应用仍处于运行状态。

当应用可见性更改时,您的应用不会收到激活事件,因为该应用仍在运行。Windows 只需根据需要在应用程序之间切换。如果您的应用需要在用户切换时执行某些操作,它可以处理VisibilityChanged | msvisibilitychange事件。

可见性事件不与恢复或激活事件一起序列化。不要假设这些事件以特定的顺序出现。

于 2012-08-08T02:17:41.297 回答
-1

如果您想跟踪应用程序焦点开关,您可以使用window.onblurwindow.onfocus。尤其是在 multimon 环境中,这很有帮助。

于 2013-03-06T13:22:38.833 回答