此问题与 Windows 8 中 IE10 浏览器的 Metro Mode 有关。
我使用 ASP.NET 4.5 创建了一个网站,并使用 ASP.NET 中提供的 Timer 控件在其中实现了一些计时器。现在,即使有人打开了新选项卡并正在使用该选项卡或打开了新应用程序并正在使用该新应用程序,计时器也应该可以工作。
例如:-假设有人打开了我的网站并且计时器现在正在滴答作响,现在如果我打开一个新选项卡或打开一个新程序(如 MS Word、记事本或任何其他应用程序),那么计时器应该继续在后台工作.
现在这在 IE 10 中运行良好,但仅在桌面模式下,但如果我在 IE10 浏览器的 Metro 模式下打开网站,然后如果我打开一个新选项卡或切换到其他应用程序,则计时器暂停,即它们停止滴答和只有当我回到打开网站的选项卡时才能恢复他们的 Ticking。
那么任何人都可以告诉我如何在 IE10 浏览器的 Metro 模式下让 ASP.NET 计时器在后台运行。
另外我在某处读到 IE10 Metro Mode 不支持 IE10 Desktop Mode 中的大部分功能,并且 IE10 Metro Mode 是为触摸屏设计的,所以这是问题所在吗?
我也用谷歌 Chrome 浏览器尝试了同样的事情,我在桌面模式下测试了网站,然后在 Windows 8 模式下再次测试了网站,当我在一个新的网站上工作时,ASP.NET 计时器的工作时间都按照它们应该的方式工作选项卡或其他一些应用程序。
所以这个问题只存在于 IE10 Metro Mode 中。
我使用的是普通的经典 ASP.NET 4.5,而不是 MVC 或 Razor 或任何其他框架。
或者如果没有解决方案,那么有没有办法自动将用户从 IE10 Metro Mode 切换到 IE10 Desktop Mode?