音频需要在每个正确且错误的答案上播放。
// Span "correct!" or "wrong!"
if(isRightAnswer) {
$parent.find('div.wpvq-explaination div.wpvq-true').show();
$('#audio1').get(0).play();
} else {
$parent.find('div.wpvq-explaination div.wpvq-false').show();
$('#audio2').get(0).play();
}
我有两个音频文件一个用于true,另一个是错误的。当它是真或错误时,都需要播放音频。现在它仅处理第一个1-2答案。
<audio id="audio1" src="http://f5361a5c08a4c03f7c6f-acbeb9602bd0a56bf9c1a6bed3d8280b.r27.cf2.rackcdn.com/RightSound2%202.mp3" ></audio>
<audio id="audio2" src="http://f5361a5c08a4c03f7c6f-acbeb9602bd0a56bf9c1a6bed3d8280b.r27.cf2.rackcdn.com/wrongSound2.mp3" ></audio>
它在起作用,但并没有重复每个真实和错误。一次仅工作。
屏幕截图
您遇到的问题是,一旦声音播放曲目的位置,就不会返回开始。因此,再次致电play()
无能为力,因为音频在轨道的末尾。
要强制此操作,请在致电play()
之前设置currentTime = 0
:
var correctAudio = $('#audio1').get(0);
$('#right-answer').click(function() {
correctAudio.currentTime = 0;
correctAudio.play();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<audio id="audio1" src="http://f5361a5c08a4c03f7c6f-acbeb9602bd0a56bf9c1a6bed3d8280b.r27.cf2.rackcdn.com/RightSound2%202.mp3"></audio>
<button id="right-answer">Right answer</button>