videoタグを学ぶ
サンプル
//html<video

		id="video2"

		controls

		poster="image.jpg"

		preload="metadata"

	>

		<source src="sample.mp4" type="video/mp4"></source>

</video>



//js

const video = document.getElementById('video2');

video.addEventListener('canplaythrough', event => {console.log(event.type)})

video.addEventListener('complete', event => {console.log(event.type)})

video.addEventListener('durationchange', event => {console.log(event.type)})

video.addEventListener('emptied', event => {console.log(event.type)})

video.addEventListener('ended', event => {console.log(event.type)})

video.addEventListener('loadeddata', event => {console.log(event.type)})

video.addEventListener('loadedmetadata', event => {console.log(event.type)})

video.addEventListener('pause', event => {console.log(event.type)})

video.addEventListener('play', event => {console.log(event.type)})

video.addEventListener('playing', event => {console.log(event.type)})

video.addEventListener('progress', event => {console.log(event.type)})

video.addEventListener('ratechange', event => {console.log(event.type)})

video.addEventListener('seeked', event => {console.log(event.type)})

video.addEventListener('seeking', event => {console.log(event.type)})

video.addEventListener('stalled', event => {console.log(event.type)})

video.addEventListener('suspend', event => {console.log(event.type)})

video.addEventListener('timeupdate', event => {console.log(video.type)})

video.addEventListener('volumechange', event => {console.log(event.type)})

video.addEventListener('waiting', event => {console.log(event.type)})


結果
durationchange

loadedmetadata

progress

suspend

loadeddata

canplaythrough

play

playing

timeupdate

・

・

timeupdate

durationchange

timeupdate

・

・

timeupdate

pause

ended
htmlの解説
属性として与えることができるものは下記になる。
- controls
- これがないと再生できない。
- autoplay
- 画面が表示されてから自動的に再生するか。
- muted
- 音声を許可するか。chrome93ではこれがないとautoplayが機能しなかった。
- loop
- ループ再生するか。
- controlslist
- nodownloadはダウンロード項目を無効化する。
- nofullscreenはフルスクリーン項目を無効化する。
- noremoteplaybackは外部ディスプレイへの投影項目を無効化する。
- disablePictureInPicture
- ブラウザpipを無効化する。
- disableRemotePlayback
- 外部ディスプレイへの投影項目を無効化する。controlslistのものとの関連性は不明。
- currentTime
- よくわからん。
- playsinline
- よくわからん。