5

我正在开发一个 webapp (javascript) 放在 iPad 的主屏幕上,以便能够以全屏模式运行它。一切正常,但随机一段时间后,主页按钮不再起作用。但是该应用程序仍在继续运行,并且根本没有错误。我仍然可以在我的 mac 上使用 safari 在控制台中运行 javascript 函数,警报,提示,所有这些东西都在工作。但不是 window.close(); 要退出应用程序,我必须通过按下关机按钮和主页按钮来重新启动设备。

如果有人可以帮助我弄清楚它是什么,我会很高兴。

4

2 回答 2

2

SoundJS团队已将此问题追溯到Web 应用程序进入全屏模式时使用:

<meta name="apple-mobile-web-app-capable" content="yes" />

向苹果报告了一个错误(参考 #15133492)。

目前除了不进入全屏模式外,我们没有其他解决方法。

于 2013-10-07T22:42:18.420 回答
0

alert我遇到了同样的问题,经过一些调试后,我发现它来自confirmprompt原生盒子。

在特定情况下显示其中一个本机框后(并非所有情况都是如此),硬件主页和锁定按钮将不再起作用。

在我的情况下,框在这样的事件confirm()中被调用:onclicksetTimeout

var btnCallback = function() { setTimeout(function() { callback(/*var answer = confirm('');...*/); }, 1); }

您应该删除对此类对话窗口的调用,并更喜欢使用自制的。

在装有 iOS 6.1.3 的 iPhone 4 上测试。

希望能帮助到你。

编辑

它也可能来自阻塞代码的 javascript 部分(如confirm显示时的行为或大量代码处理)。

这只是假设。

编辑 2

经过其他测试,问题似乎仍然存在。我所做的只是使用谷歌地图 API v3 并显示来自当前 URL 哈希的 div。

无需重新加载页面,只需 javascript 和窗口位置哈希操作。

我不明白它是从哪里来的。

于 2013-07-03T07:24:23.293 回答