$(document).ready(function()
{
const howlerList = {};
for (var i = sounds.length - 1; i >= 0; i--)
{
howlerList[sounds[i]] = new Howl({src: ["/sounds/" + sounds[i] + ".mp3"]});
$("#" + sounds[i]).click(function()
{
howlerList[$(this).attr("id")].play();
});
};
});
這是我的代碼。這些聲音存儲在名爲sound的文件夾中,並且其ID位於JSON文件中。咆哮jQuery播放新聲音時會停止所有聲音
我試圖停止當按下新按鈕時播放當前所有聲音。
更改爲下面的代碼將停止並單擊同一個按鈕時重新啓動聲音。但是,如果我點擊其他按鈕,那麼多個聲音將同時播放。
$("#" + sounds[i]).click(function()
{
howlerList[$(this).attr("id")].stop();
howlerList[$(this).attr("id")].play();
});
我希望它一次只播放1個聲音,不管按哪個按鈕。有什麼建議麼?
謝謝。
您是否嘗試過所有的howlerList元素循環和播放他們點擊特定的一個前停止()呢? – Taplar
不,我沒有,這是一個很好的建議,但亞當的答案下面的工作。 – Programmer7