考虑以下代码:
var currentPlayback = "";
function playSound(elem) {
var str = elem.id;
currentPlayback = str;
if (elem.counter === undefined) {
elem.counter = 0;
}
// Problem is here: Should check for current playback and act accordingly
if (currentPlayback !== str) {
lib[currentPlayback].stopAudio();
}
// Play/Stop
if (elem.counter === 0) {
lib[str].playAudio();
elem.counter = 1;
} else {
lib[str].stopAudio();
elem.counter = 0;
}
}
我正在尝试建立一个声音系统,每个按钮点击一个声音,播放声音。我使用一个名为lib(库)的obj来保存所有声音文件。它们都具有启动和停止播放的功能。它到目前为止工作得很好,我几乎完成了。问题是,如果点击另一个按钮,我想让当前播放停止。试图存储到全局,然后每次调用函数时更改它,但它不起作用。声音只是彼此重叠。
提前致谢! 干杯