第二个音频文件意外循环
Second Audio Files Loops Unexpectedly
我希望两个音频文件一个接一个地播放,然后停止,只使用一个音频标签。问题是当第二个音频文件播放时,它会重复一段时间,然后停止。我认为这是一个冒泡的问题,所以我使用了e.stopImmediatePropagation()
但这不起作用。我也尝试了e.preventDefault()
e.stopPropagation()
和return false
.这些都不起作用。我觉得我的代码可能已经关闭了,所以如果有人可以告诉我出了什么问题以及更好的方法来解决这个问题,我们将不胜感激。
$('#audio').on({
'ended' : function(e) {
this.src= 'sounds/new_speech.mp3';
this.play();
$('#audio').on({
'ended' : function(){
document.querySelector('#audio').src= 'sounds/new_sound.mp3';
}
});
e.stopImmediatePropagation();
}
});
您可以为播放多首曲目的一个标签重复使用同一事件:
<audio id=audio controls autoplay
src="http://ia700706.us.archive.org/27/items/3112011-08-06/3.03.ComeOriginal.mp3"></audio>
<script>
var tracks=[
"http://ia700706.us.archive.org/27/items/3112011-08-06/3.04.WildNights.mp3",
"http://ia700706.us.archive.org/27/items/3112011-08-06/3.05.Eons.mp3"
];
$("#audio").on({ended:function(e) {
var track=tracks.shift();
if(track){
this.src= track;
this.play();
}
}});
</script>
现场演示:http://pagedemos.com/74yy2ur65zev/
相关文章:
- 为什么我在下面的..of循环中得到意外令牌
- 来自 JavaScript 循环的意外结果
- 意外的无限循环
- Chrome内部循环行为的意外Javascript
- Angular应用程序中FOR循环的意外行为
- Javascript do/while循环显示意外结果
- jQuery.hooper和.mouseleve意外循环.我该如何修复
- 第二个音频文件意外循环
- jsbin for 循环不起作用 意外的令牌错误
- Javascript 循环意外行为
- 设置间隔循环意外中断
- 语法错误:循环程序中出现意外标记
- Javascript 三元,带循环错误;“未捕获的语法错误:意外的令牌”
- jQuery Ajax 调用在意外循环中
- 对于具有数组意外标识符的循环
- FOR类型循环中的大括号,意外地更改了代码的结果
- 嵌套循环中出现意外中断;t显示在调试器中
- do while循环意外的标识符
- 尝试在渲染内部循环时,反应意外的令牌{}
- JavaScript - 循环的意外标识符