我正在编写html5游戏,并使用像这样的音频文件
var sound = new Audio('sound.mp3');
当命令sound.play()出现在游戏中的某个点时,浏览器会下载并播放sound.mp3。这会导致播放声音时出现延迟。
有没有办法强制浏览器提前下载所有音频文件以防止这种情况?
答案 0 :(得分:2)
var sound = new Audio();
sound.preload = 'auto';
sound.addEventListener('canplaythrough', function () {
sound.play(); // or other callback actions after preloading
});
document.body.appendChild(sound);
sound.src = 'sound.mp3';
sound.load();