使用SoundManager2时,onfinish会提前开火

时间:2013-05-08 17:54:43

标签: javascript audio soundmanager2

我试图在SoundManager2中的声音播放结束时使用onfinished来触发一个功能。我的代码如下:

function createSound(id, path) {
    mySound = soundManager.createSound({
            id: id,
            url: path,
            volume: 100,
            onfinish: playNextSound(id),
            (...)
            },
    });
    return mySound;
}

function playNextSound(id) {
    (...)
    alert("Done!");
}

然而,只要我点击播放,该功能就会触发(并显示警报),这显然不是应该发生的事情。我已经尝试将onfinish放在play()函数中,但无济于事。

任何想法可能出错?

1 个答案:

答案 0 :(得分:1)

因为您正在执行playNextSound函数并将其返回值分配给onfinish

你应该这样做:

onfinish: playNextSound,