我有一个问题,关于移动 WebKit 浏览器(即移动 Safari 和 Android 浏览器)在页面变为非事件状态并再次重新激活时如何处理 setTimeout 函数。
假设页面变为非事件状态(即手机屏幕进入“ sleep ”/我们打开另一个应用程序/我们打开另一个网页),并且 setTimeout 函数应该在页面再次变为事件状态之前激活。
现在看来:
- Mobile Safari 会在页面激活后立即执行该功能
- 安卓浏览器:
- 可能会像往常一样执行函数(即即使页面处于非事件状态,JavaScript 也会继续运行)
- 可能会在页面激活后立即执行(类似于 Mobile Safari)
- 可能根本不执行
我想知道是否有人知道确切的“规则”?
最佳答案
根据以下问题,Android 只是暂停了运行时,并在浏览器被带到前台时从它停止的地方继续。
Android browser javascript events when minimised
与您所说的 Mobile Safari 略有不同,但恕我直言,这似乎是一种更好的方法。
关于javascript - 移动 WebKit 浏览器 - setTimeout 和非事件页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2820760/