【问题标题】:Jquery mobile - Delay auto hiding address barJquery mobile - 延迟自动隐藏地址栏
【发布时间】:2012-10-29 17:09:01
【问题描述】:

我很高兴使用 JQuery Mobile 开发了一个移动网站,除了主页上隐藏浏览器地址栏的明显延迟(iOS Safari 上大约 5 秒)之外,一切都运行良好。

AJAX 转换意味着它从那时起始终处于隐藏状态,但在打开页面上,网站徽标在页面加载后最多隐藏 5 秒,给用户一种非常无品牌和混乱的感觉。

谁能想到延迟的任何原因/加快速度的方法?页面上没有加载大图像,在隐藏地址栏之前的窗口加载事件触发中发出警报,并且 JQuery Mobile 代码中触发代码的 setTimeout 延迟仅为 20 毫秒左右。

提前致谢,泰德

【问题讨论】:

  • 这不是与浏览器相关的问题吗?你试过不同的浏览器吗?
  • 问题可能与此重复:stackoverflow.com/questions/7890003/…
  • 我想这将是一个因素。 iOS 上的 Chrome 似乎根本没有让 JQuery Mobile 隐藏工具栏,这对主页来说更好,但在那之后更糟糕的是,因为失去了全屏视图的能力。

标签: jquery-mobile


【解决方案1】:

我使用 Mobile Boilerplate 的 MBP.hideUrlBarOnLoad() 并且没有遇到 5 秒的延迟。

隐藏网址栏

MBP.hideUrlBarOnLoad 用于隐藏手机顶部的网址栏 iOS 上的 Safari。移动空间有限,这有助于利用 屏幕上的每个像素以最大化显示区域。

【讨论】:

    【解决方案2】:

    遗憾的是,我不得不求助于一个非常老套的解决方案。

    我在页面顶部添加了一个 60px 高的虚拟分隔符 div,它将标题向下推,因此它始终可见。然后在 5 秒 setTimeout 调用后被 Javascript 隐藏,这大致相当于我们在 url 栏上得到的延迟被 JQuery mobile 自动隐藏。

    这仅在起始页上是必需的,以及我们必须在 rel="external" 链接上加载的其他链接,因为我们犯了将需要回发的 ASP.net 站点与 JQuery mobile 混合的错误, but that's another story...

    【讨论】:

      【解决方案3】:

      我已经看到当内容与 Safari“阅读器”兼容时会发生这种情况(当您在 url 栏上的 url 旁边看到“阅读器”标签时)。我不确定,但如果是这种情况,也许您可​​以尝试降低您的内容与阅读器的兼容性。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-08-08
        • 1970-01-01
        • 1970-01-01
        • 2018-01-13
        • 2020-08-04
        相关资源
        最近更新 更多