9

我已apple-mobile-web-app-capable在我的网络应用程序的 head 部分中将其设置为 true。很好,Chrome 会尽可能隐藏地址栏,以便为网络应用程序提供更多空间。

问题是我的应用程序的导航在那段时间位于顶部并位于地址栏后面。我想知道是否有一种方法可以检测地址栏何时显示并将导航放置在地址栏下方。

如果我删除apple-mobile-web-app-capable元标记,地址栏会显示,但导航仍然在它后面。出于某种原因,Chrome 将窗口大小设置为屏幕大小,但将地址栏拉到其顶部。

有人知道对此有任何解决方案吗?

4

1 回答 1

4

实际上有一个解决方法;你只需要强制你的应用向下滚动 1px(足以隐藏 Chrome 地址栏):

setTimeout(function() {
  // Already scrolled?
  if(window.pageYOffset !== 0) return;

  window.scrollTo(0, window.pageYOffset + 1);
}, 1);
于 2013-04-21T11:23:29.833 回答