1、問題描述:
多個音頻連續播放時,會出現音頻播放不連貫的問題,致使音頻播放終止,同時控制檯會報異常,以下圖所示:
this
2、問題緣由:
執行了音頻的play()方法之後當即執行pause()方法,二者之間切換過快。spa
audio.addEventListener('ended', function() { goNextAudio(_this); })
3、解決辦法:
設置保護性延遲,當兩次執行太過頻繁時,直接退出,不向下執行程序。code
audio.addEventListener('ended', function() { var currentTimes = Date.now(); var protectTime = 100; if ((currentTimes - lastRunTime) < protectTime) { return; } goNextAudio(_this); })