在 java 脚本中依次播放 2 个或多个 .wav 文件

playing 2 or more .wav files one after another in java script

基本上我想玩验证码。我有 1.wav、2.wav 等。 我会将验证码数字发送到一个函数,将函数中的数字分开,并且每个数字都想播放相应的 .wav 文件。 举个简单的例子,如果我想玩 1.way、2.way 和 3.way,我正在使用:

function PlayCaptcha() 
    {

        document.getElementById('audiotag1').play();
        document.getElementById('audiotag2').play();
       document.getElementById('audiotag3').play();          
    } 

<audio id="audiotag1" src="sounds/1.wav" preload="auto"></audio> <audio id="audiotag2" src="sounds/2.wav" preload="auto"></audio> <audio id="audiotag3" src="sounds/3.wav" preload="auto"></audio>

问题是它以非常高的速度播放所有文件。并且只能收听 3.wav 播放。 我希望在播放 1.wav 之后有一些间隙,然后播放 2.wav 然后再播放一段时间,然后应该播放 3.wav。

有什么解决办法吗?

Use onended event of Audio, Alert that the audio has ended

试试这个:

function PlayCaptcha() {
  var audiotag1 = document.getElementById('audiotag1');
  var audiotag2 = document.getElementById('audiotag2');
  var audiotag3 = document.getElementById('audiotag3');
  audiotag1.play();
  audiotag1.onended = function() {
    audiotag2.play();
  };
  audiotag2.onended = function() {
    audiotag3.play();
  };
  audiotag3.onended = function() {
    alert('Ended!');
  };
}