javascript - 当移动设备处于 sleep 状态时,Javascript 超时是否继续执行?

标签 javascript mobile web timer sleep

我正在开发一个需要测量用户输入之间耗时量的应用程序。我更喜欢使用超时,但可以将时间值存储为变量并计算出已经过去了多长时间。该网络应用程序将主要在移动设备上使用。如果设备在设置超时时间和结束时间之间进入休眠状态,javascript 会判断是否已超出超时时间吗?

谢谢

最佳答案

简短回答:不。当手机浏览器切换到后台时,脚本不会被执行。

更复杂的答案:如果移动设备启用后台应用程序并且浏览器决定给予页面优先级,则脚本将继续执行。到目前为止,大多数设备都不是这种情况,尤其是 iPhone。

话虽如此,无论如何您都可以使用超时功能。当用户恢复页面时,该函数仍然被触发。超时事件只是“卡住”,但并没有取消。计时时钟也被暂停,所以你必须记住实际时间,并与“唤醒时间”进行比较。使用 setInterval 来拉动这个截止日期。如果超时提前到来,则取消 Interval 回调。

谢谢你的提问。这引起了我的思考。

关于javascript - 当移动设备处于 sleep 状态时,Javascript 超时是否继续执行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21223199/

相关文章:

javascript - 如何刷新页面

javascript - HTML 验证

javascript - 如果行的所有元素都不是值(NaN、null、未定义),如何删除数组数组中的行?

java - 如何从另一个 AsyncTask 停止(中止)一个 AsyncTask?

android - CSS:应用多个媒体查询

html - 底部的可移动导航在窗口调整大小时停留在那里

asp.net - 发布网站的奇怪问题(发布后图像不显示)

javascript - 当页面不在根目录中时找不到操作

css - 将替代样式表应用于手持设备,无法正常工作

JavaScript 函数无法正常工作