我有一个页面,需要根据数组的值播放声音(并播放整个数组)。因此,例如,我有一个数组{1、0、0、0、1、1、0、1、0},我需要它们按顺序播放或暂停,即1 =播放,0 =“暂停”。

到目前为止,我已经尝试了许多方法,但是无法按我期望的那样进行。

我得到的最接近的是:

$.each(myFinalList, function(i, playit){
    if(playit == 1){
        $("#results").append("Play..");
        setTimeout("playSound()", 3250);
    }
    else{
        $("#results").append("Nothing..");
        setTimeout("doNothing()", 3500);
    }
};

function playSound(){
    var snd = new Audio('');

    if(snd.canPlayType('audio/mp3')){
        snd = new Audio('sound.mp3');
    }

    snd.play();
}

function doNothing(){
    //dont do anything
}

这样做的问题是声音没有在适当的时间播放,就像没有调用doNothing()一样。

有什么想法吗?

最佳答案

试试这个:

http://jsfiddle.net/ZkE8B/12/

让我知道是否有帮助

编辑:http://jsfiddle.net/ZkE8B/15/在每个周期完成时清除笔录

关于javascript - 在计时器上播放(html5)音频,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7237801/

10-16 21:58