HTML5オーディオ要素がロードされているかどうかを確認する方法を知りたいです。
オーディオが再生を開始する準備ができたことを確認するには、 oncanplay
またはoncanplaythrough
イベント のリスナーを追加します。オーディオがロードされたことを確認するには、 onloadeddata
event をリッスンします。
<audio oncanplay="myOnCanPlayFunction()"
oncanplaythrough="myOnCanPlayThroughFunction()"
onloadeddata="myOnLoadedData()"
src="myaudio.ogg"
controls>
<a href="myaudio.ogg">Download</a>
</audio>
<script>
function myOnCanPlayFunction() { console.log('Can play'); }
function myOnCanPlayThroughFunction() { console.log('Can play through'); }
function myOnLoadedData() { console.log('Loaded data'); }
</script>
イベントリスナーの使用方法については、robertcの回答をご覧ください。オーディオ要素の準備状態を直接確認することもできます:
var myAudio = $('audio')[0];
var readyState = myAudio.readyState;
readyState
は数値になります。 Mozillaのドキュメント から: