ブラウザで簡単なオーディオプレーヤーを作成しましたが、問題があります。たとえば、HTMLコードに20個のオーディオタグがあります。
<audio class="tr_audio">
<source src="track1.mp3" type="audio/mpeg">
<source src="ogg/track1.ogg" type="audio/ogg">
</audio>
<audio class="tr_audio">
<source src="track2.mp3" type="audio/mpeg">
<source src="ogg/track2.ogg" type="audio/ogg">
</audio>
<audio class="tr_audio">
<source src="track3.mp3" type="audio/mpeg">
<source src="ogg/track3.ogg" type="audio/ogg">
</audio>
...
<audio class="tr_audio">
<source src="track20.mp3" type="audio/mpeg">
<source src="ogg/track20.ogg" type="audio/ogg">
</audio>
20項目のリストがあります。1トラックにつき1アイテム。そして、クリックイベントで再生します。ページがキャッシュにロードされている20トラックすべてをロードしているときに、問題が発生しますか?また、一部のトラックは、まったくロードできないか、部分的にロードできない場合があります。したがって、そのようなトラックを再生しようとすると失敗します。(たとえば、track17がロードされておらず、item17をクリックすると曲が再生されません)。また、このように前の曲を止めます
$('.'+part+'_audio')[song_number].currentTime = 0;
$('.' part '_audio')[song_number].pause();
したがって、前のトラックが完全にロードされていないか、部分的にロードされている場合、この文字列
`$('.'+part+'_audio')[song_number].currentTime = 0;`
エラーUncaughtError:INVALID_STATE_ERR:DOM Exception 11.を返します。そのため、ページを数回リロードする必要があります。そうすると、20曲すべてがキャッシュに読み込まれ、エラーなしで再生されます。しかし、それは間違った方法です。右を教えてください。ありがとうございました!
あなたはここで私のプレーヤーを見ることができます(広告ではありません):http ://www.pompeya-for.me
私はjQueryを学び始め、練習用にこのプレーヤーを作成し始めました。「インドのコード」に驚かないでください。