2014-01-13 26 views
8

ブラウザがフルスクリーンモードになったときを監視しようとしています。Chromeでfullscreenchangeイベントが発生しない

このブログはどこでも参照されています。フルスクリーンAPIのガイドとして検索します。

http://robertnyman.com/2012/03/08/using-the-fullscreen-api-in-web-browsers/

このSOまた、この作品と主張答えます。ここで

Fullscreen API: Which events are fired?

はjQueryを使って私のコードですが、それがイベントを発火いません。

$(document).on("webkitfullscreenchange mozfullscreenchange fullscreenchange",function(){ 
     console.log("bang!"); 
}); 

シンプルですが、Chromeでは起動しません。私が間違っていることは何か考えていますか?

UPDATE:新しい何かを発見

。これらのイベントは、JavaScriptがrequestFullScreen APIを呼び出す場合にのみ機能しますが、ユーザがF11を押した場合は無効になります。

答えて

9

fullscreenchangeイベントは機能しますが、フルスクリーンモードがrequestFullScreenによってトリガーされている場合のみです。

ユーザーがホットキーを使用してフルスクリーンモードを手動で有効にした場合、JavaScriptが監視されないようにするセキュリティ制限があるようです。

また、(つまり、デュアルモニターで、この作品がでしょうか?)あなたは、ウィンドウがデスクトップのサイズと一致するかどうかを確認するために、サイズ変更イベントを監視することができますが、これは私にはハックのように思える

私は監視を放棄することを決めましたフルスクリーンモードを使用し、APIを使用して状態を切り替えるだけです。

関連する問題