我正在开发一个需要测量用户输入之间的时间量的应用程序。我更喜欢使用超时,但可以将时间值存储为变量并计算出已经过了多长时间。此Web应用程序主要用于移动设备。如果设备在设置超时和结束时间之间进入休眠状态,javascript会判断是否超过超时?
由于
答案 0 :(得分:1)
简答:不。移动浏览器切换到后台时,不会执行该脚本。
更复杂的答案:如果移动设备启用后台应用程序,并且如果浏览器决定给予页面优先级,则脚本继续执行。到目前为止,大多数设备都不是这种情况,当然不是iPhone。
话虽如此,您可以使用超时功能。当用户恢复页面时,仍然会触发该功能。超时事件仅“冻结”,但不会被取消。定时时钟也暂停,因此您必须记住实际时间,并在“唤醒时间”时进行比较。使用setInterval来拉动此截止日期。如果超时到达,请取消Interval回调。
感谢您提出这个问题。它让我思考。