我有以下 HTML 和 JS:
<script>
function onEnded(ev) {
window.location.reload();
}
</script>
<audio id="audio-element" controls autoplay onended="onEnded();">
<source src="/stream/3" type="audio/mp3" />
</audio>
对于某些 MP3 流,这非常有效;播放开始,并在音轨结束时onEnded
调用。对于其他人,播放开始正常并播放音频文件,但在结束时,经过的时间计数器变得非常负,ended
事件永远不会触发并audio_element.ended
返回false
。这是一个屏幕截图:
这发生在 Chrome 中,但不是 Safari 或 Firefox,它们的行为与预期相同。知道我可以在 Chrome 中做什么来使ended
事件触发吗?