Ben*_*ter 14 javascript iphone
有没有办法告诉javascript函数即使手机被锁定也能继续运行?
几乎我有一个计时器,我需要继续运行,即使手机设置为空闲.
小智 19
是的你可以.当safari在后台时,您甚至可以运行JavaScript.
只需在您的网站上放置一个隐藏的框架:
<iframe src="background.html" style="display:none;"></iframe>
Run Code Online (Sandbox Code Playgroud)
background.html:
<!DOCTYPE HTML>
<head>
<meta http-equiv="refresh" content="3" />
</head>
<body>
<script>
parent.run_function_from_core_page();
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
隐藏帧中的页面每3秒刷新一次,即使手机被锁定,也会运行JavaScript.
请注意,如果您不在WiFi上,它也会导致高数据流量!
mop*_*led 13
编辑:您可以使用<iframe>
技巧在后台运行定时的JavaScript代码.请参阅Zsolt对此问题的回答.
setTimeout()
但是,当iPhone处于休眠状态时,您无法继续运行javascript .
当手机进入睡眠状态时,Safari将使用以下任何正在运行的javascript进程终止setTimeout()
.请查看此答案,了解为什么要这样做.