2

ユーザーが Safari で「フルスクリーン機能」を使用しているかどうかをどのように検出できるのか疑問に思っています。踏み台から始まったという意味ではなく、iOS 6で追加された機能という意味です。

実際、このコードが投稿されたSOで同様の質問がありました:

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

しかし、問題は、方向が変更されたときにもトリガーされることです。また、ハードコードされた値、特に「300」を使用するのが良い考えかどうかもわかりません。「ブラウザのフルスクリーン」モードを検出するより良い方法はありますか?

編集:わかりましたので、確認しました:iPhoneで方向を変更するonorientationchange resizeイベントがトリガーされます。Safari をフルスクリーンに変更することもトリガーさresizeれるため、関数をそのイベントにフックできます。しかし、Android デバイスはどうですか? それらもトリガーしresizeますか? それとも、単に関数をonorientationchange and resizeにバインドするのが最善ですか?

4

1 に答える 1

1

クロスブラウザ方式

$(document,window).on('resize orientationchange webkitfullscreenchange mozfullscreenchange fullscreenchange',  function(){

});
于 2013-05-24T07:23:48.800 に答える