我正在尝试隐藏网页的地址栏。在Iphone 4及更低版本上,它可以使用
window.scrollTo(0,1);
和meta标签 。 但对于IOS 6来说,这些似乎不起作用。我在stackoverflow中检查了其他类似的问题,但找不到有效的解决方案。有没有人遇到过类似的问题?如果是,除了将网站作为Web应用程序添加到主屏幕然后从那里启动之外,是否有任何其他解决方案。
谢谢。
答案 0 :(得分:1)
在玩完脚本后,我注意到以下内容: 每当我重新加载页面时,地址栏都会隐藏。 因此,作为此问题的解决方法,我触发重载事件(通过调整大小函数)并在调整大小函数中执行window.scroll(0,1)。
我有一个功能
var hideAddressBar = function() {
if(document.documentElement.scrollHeight<window.outerHeight/window.devicePixelRatio)
document.documentElement.style.height=(window.outerHeight/window.devicePixelRatio)+'px';
setTimeout(function() {
window.scrollTo(1,1)
}, 0);
if(navigator.userAgent.match(/Android|iPhone/gi)){
window.scrollTo(0,1);
}
}
我最初只是在Onload事件上调用此函数。 Tis正在为ios 5工作但不适用于ios6。我意识到在我的脚本中有一个在渲染页面后调用的resize函数。所以我在调整大小结束时调用了hideaddressbar函数。因此,在呈现页面后,您是否要重新调整大小或重新加载?如果是,则在重新加载完成后调用hideAddressBar。我希望这能解决你的问题。