我有一个在iPad上的Safari上运行的网络应用。我正在从iPad主页启动该应用程序。我希望该应用程序以全屏模式启动,并继续以全屏模式运行(即不显示Safari地址栏)。因此,我在网站主页上添加了以下元标记:
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="black" />
<meta name="viewport" content="width=device-width">
我从iPad主页启动了该应用程序,它在全屏模式下很好地启动(不显示Safari地址栏),但是当我单击该站点上的另一个页面时(具有相同的元标记,继承自相同的网站母版页),然后地址栏突然弹出(并保持在 View 中)。该链接如下所示(我正在使用jQueryMobile):
<a href="/Home" data-ajax="false">Home</a>
在内部页面之间导航时,如何通过隐藏地址栏来强制Web应用程序看起来像“ native 应用程序”?
最佳答案
如果您使用外部链接,则Mobile Safari似乎不“ native ”支持全屏。一旦您使用html anchor ,它就会退出全屏模式。 window.scrollTo可能是一种对某些人有用的解决方法,但我也想避免在过渡到非全屏模式时UI自身翻转的方式。
答案是使用window.location.assign()。这样可使全屏应用程序保持在“ native ”全屏模式。您只需要将标签重构为javascript window.location.assign(url)调用-然后将其保持在全屏状态即可。
关于ipad - 阻止iPad Web应用显示Safari地址栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6200058/