iOS6 Safari全屏检测

iOS6 Safari全屏检测

问题描述:

我想在iOS6中使用Safari的新全屏功能。现在我知道无法从javascript触发全屏功能,这没关系,但我想知道用户何时进入全屏模式。 (要显示一个弹出的文本“这个网站最好在全屏模式下查看”,直到用户全屏。)iOS6 Safari全屏检测

我试着设置窗口,文档和'包装'div(宽度和在css中设置为100%的高度)onresize事件(通过正常的javascript和通过jQuery的'resize'事件),但是当我进入全屏模式时它们不会被触发。

我还设置了检查屏幕/文档/包装器的宽度和高度变化的时间间隔,但它们没有显示任何变化。

是否有任何其他方式来确定用户输入(或左)全屏模式?

好吧,我真的不知道为什么它以前没有工作,但我责怪新的safari ios调试控制台(现在需要在你的mac上通过槽浏览器),因为它并不总是显示我发送到控制台的所有日志。

但是,当我只是将消息附加到html文档本身的正文时,事件就会起作用。将jQuery的'resize'事件绑定到窗口似乎是最好的选择。

原稿的高度是东西约200时不能全屏显示,当全屏它的320

最简单的解决方案似乎只是工作。 (只需将其与方向更改功能结合使用,即可检测iPhone是否处于横向模式(http://ajaxian.com/archives/iphone-windowonorientationchange-code))。

$(window).on('resize', function(){ 
     if ($(this).height() > 300 && 
      (window.orientation == 90 || window.orientation == -90)) { 
      // Full screen! 
     } else { 
      // Exit full screen! 
     } 
    });