声音没有播放两次

时间:2013-05-31 10:27:05

标签: audio web-applications html5-audio tizen tizen-web-app

我有一个Tizen OS的网络应用程序。我需要播放两次声音并且每次都要做一些动作。

在浏览器中它工作得很完美,但在设备上行为却很奇怪。 有时第一次声音应该播放,第二次没有声音。有时两次都会播放,但不会调用回调。

代码:

var callback = function() {
    doAction()
};
SoundManager.playSound(soundID, callback);
setTimeout(function() {
    callback = function() {
        doAnotherAction();
    };
    SoundManager.playSound(soundID, callback);
}, 3000);

声音管理器:

SoundManager.playSound = function(id, callback) {
    if (callback != null) {
        var func = function() {
            callback();
            this.removeEventListener('ended', func, false);
        }
        $(SoundManager.sounds[id])[0].addEventListener('ended', func, false);
    }
    $(SoundManager.sounds[id])[0].play();
};

1 个答案:

答案 0 :(得分:1)

找到解决方案。

每次只需将'结束'回调添加到音频和重置时间:

this.currentTime = 0;