2013-02-16 41 views
5

我想在iOS6中使用Safari的新全屏功能。現在我知道無法從javascript觸發全屏功能,這沒關係,但我想知道用戶何時進入全屏模式。 (要顯示一個彈出的文本「這個網站最好在全屏模式下查看」,直到用戶全屏。)iOS6 Safari全屏檢測

我試着設置窗口,文檔和'包裝'div(寬度和在css中設置爲100%的高度)onresize事件(通過正常的javascript和通過jQuery的'resize'事件),但是當我進入全屏模式時它們不會被觸發。

我還設置了檢查屏幕/文檔/包裝器的寬度和高度變化的時間間隔,但它們沒有顯示任何變化。

是否有任何其他方式來確定用戶輸入(或左)全屏模式?

回答

0

好吧,我真的不知道爲什麼它以前沒有工作,但我責怪新的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! 
     } 
    });