2016-12-12 5 views
0

ユーザーがデフォルトのHTML5動画プレーヤーに組み込まれているフルスクリーンボタンをクリックしたときに、その機能を傍受して上書きすることはできますか?HTML5動画オーバーライドコントロール

背景 - カスタムオーバーレイを備えたビデオプレーヤーがあります(カスタムコントロールではありません)。そのオーバーレイをフルスクリーンモードで表示する必要があります。私は自分自身のボタンをスクリーンに追加して、プレーヤーをフルスクリーンにしてもオーバーレイを表示することができますが、プレーヤーコントロールの内蔵フルスクリーンボタンにこの機能をバインドしています。サポート。ありがとう!

+0

は、[同様のポスト を参照してくださいhttp://stackoverflow.com/questions/27415536​​/html5-fullscreen-video-onclick-event](http://stackoverflow.com/questions/ 27415536​​/html5-fullscreen-video-onclick-event) – Ishey4

+1

[fullscreenchangeイベント](https://developer.mozilla.org/en-US/docs/Web/Events/fullscreenchange)かもしれません。 –

答えて

0

サンプルビデオやオーディオファイルがないとこれをテストできませんでしたが、fullscreenchangeイベントと関連するdocument.fullscreenElementのブラウザ(この時点ではthey are all behind vendor prefixes)を追跡できるようにする必要があります。

var fullscreen = getFullscreenProps(), 
 
    video = document.querySelector('video') 
 

 
console.log(fullscreen) 
 

 
document.addEventListener(fullscreen.fullscreenchange, function (event) { 
 
    var isVideoFullscreen = document[fullscreen.fullscreenElement] === video 
 
    console.log(isVideoFullscreen) 
 
}) 
 

 

 
function getFullscreenProps() { 
 
    var keys = 'fullscreenElement mozFullScreenElement msFullscreenElement webkitFullscreenElement'.split(' '), 
 
     prefixes = ' moz ms webkit'.split(' ') 
 
    for (var i = 0; i < keys.length; i++) { 
 
     if (keys[i] in document) { 
 
      return { 
 
       fullscreenElement: keys[i], 
 
       fullscreenchange: prefixes[i] + 'fullscreenchange' 
 
      } 
 
     } 
 
    } 
 
    return { 
 
     fullscreenElement: keys[0], 
 
     fullscreenchange: 'fullscreenchange' 
 
    } 
 
}
<video src="http://example.com/video.mp4" type="video/mp4" width="100" height="100"/>