当HTML5音频元素停止播放时,我需要调用一个函数。具体来说,该功能将重置搜索栏并将暂停图标更改为播放图标。
这是我的JavaScript:
var audio = document.getElementById('audio');
audio.addEventListener('ended', stopAudio);
function stopAudio() {
audio.stop();
$('.play-pause .play').show();
$('.play-pause .pause').hide();
}
..只有里面的代码一旦被调用就不会执行。音频正在成功播放并成功结束,它只是没有调用我的功能。我错过了什么?
答案 0 :(得分:0)
这是因为您使用getElementById
并在我认为您要使用audio
时传递getElementsByTagName
,或者您的音频元素ID错误。
答案 1 :(得分:0)
我需要:
audio.stop;
而不是......
audio.stop();
修正了它:)
答案 2 :(得分:0)
HTML音频元素没有方法stop()
。你的事件处理程序没有“工作”的原因是因为行audio.stop();
抛出一个错误,并且它下面的任何内容都不会执行。
答案 3 :(得分:0)
您的代码应如下所示,以便检测您的音频是否已结束。无法检测它是否已停止,但您可以检测它是否已经结束或暂停。如果您要查找暂停时间的代码,请将“已结束”替换为“暂停”
document.getElementById('audio').addEventListener("ended",function() {
$('.play-pause .play').show();
$('.play-pause .pause').hide();
}