【Fullscreen API】動画の全画面表示の操作をJavaScriptで検知する
※本記事のコードは参考用です。使用前にご自身で動作確認をお願いします。
はじめに
「動画を全画面表示を検知したい」をいう事案が発生した際に、Fullscreen API(全画面API)の存在を初めて知ったのでその備忘録です。
Fullscreen API(全画面API)
Fullscreen API(全画面API)とは
Fullscreen API は、Webページ内の特定の要素(たとえば動画や画像)を、ユーザーの操作によって画面全体に拡大表示(=全画面表示)するためのAPIです。別途調整は必要かと思いますが、基本的には動画や画像以外のHTMLでも利用できるようです。
日本語ドキュメントは以下です。
全画面 API - Web API | MDN
Fullscreen API(全画面API)の基本
メソッド / プロパティ | 説明 |
---|---|
| 要素を全画面表示にする |
| 全画面表示を終了する |
| 現在全画面表示されている要素(なければ |
| 全画面の開始/終了時に発火するイベント |
| 全画面化に失敗した時に発火 |
以下は、全画面表示の切り替えを検知するコード例です。
全画面になったときに動画を自動で再生します。
const video = document.getElementById('myVideo');
document.addEventListener('fullscreenchange', () => {
if (document.fullscreenElement) {
console.log('全画面に入りました');
video.play();
} else {
console.log('全画面から出ました');
video.pause();
}
});
用途
- 画像や動画に「全画面」ボタンをつけたい
- 資料をWebで公開し、スライドを全画面化したい
- 全画面表示になったときに、特定の処理を実行したい
など
iOS Safariでの注意点
iOS Safari(iPhone)ではFullscreen APIが利用できないようで、注意が必要です。(2025年5月現在)
Can I Useでどのブラウザのバージョンがサポートしているか確認しましょう。
Fullscreen API | Can I use... Support tables for HTML5, CSS3, etc