如何在jQTouch应用程序中要求全屏模式?

时间:2010-03-10 22:17:20

标签: iphone mobile-safari jqtouch iphone-standalone-web-app

我正在使用jQTouch开发一个针对iphone上的safari优化的网站版本。 jQTouch演示有助于向不显示全屏模式的用户显示如何显示“安装此”消息,并为那些用户隐藏它。在全屏模式下,正文应该具有“全屏”类。因此,您可以通过将此css规则添加到样式表来为已经将应用添加到其主页的人隐藏“安装此”消息:

body.fullscreen #home .info {
    display: none;
}

我想要做的是要求用户仅在全屏模式下使用该应用。从常规浏览器查看时,他们应该只看到要求他们安装应用程序的消息。那个消息当然应该隐藏起来。

这应该非常非常简单,所以我必须错过一些明显的东西。

我认为这样做的一种方法是简单地测试身体上的“全屏”类:如果它不在那里,使用goTo来到另一个div,或者隐藏其他div,或类似的东西。

然而,奇怪的是,这不起作用。作为测试,我仍然得到了原始的“info”消息,就像在jQTouch演示中一样,当我以全屏模式启动时它不会显示。所以身体必须拥有全屏类。然而,我找不到任何其他痕迹:当我在文档加载后将此警报设置为测试内容时,在全屏模式下启动时我什么也得不到:

alert($("body").attr("class"));

我还以为我可以通过检查fullScreen布尔值来测试全屏模式。但这似乎也不起作用。我错过了什么?这样做的最佳方式是什么?

1 个答案:

答案 0 :(得分:2)

好吧,我无法弄清楚为什么标准方式不起作用,但是jQTouch Google Group上有人建议这样做,这有效:

    if (window.navigator.standalone) {
   alert ('Thanks for launching this app your home screen')
} else {

   alert('Add this app to your home screen for the best experience')

}