我正在尝试使用html5loader js库来预加载音频文件。
我的代码如下所示:
var myLoader = html5Preloader();
myLoader.addFiles('mysound*:rattle1.ogg||rattle1.mp3');
myLoader.on('finish', function(){ alert('All assets loaded.'); });
myLoader.getFile('mysound').play();
我收到错误:
TypeError:myLoader.getFile(...)未定义(Firefox)和 未捕获的TypeError:无法调用方法'播放'未定义(Chrome)
有什么问题?声音文件与.html文件位于同一文件夹中。
答案 0 :(得分:0)
我不确定,但如果我查看代码,我会认为发生了以下情况:
var myLoader = html5Preloader();
// Here the preloading of the soundfile starts
myLoader.addFiles('mysound*:rattle1.ogg||rattle1.mp3');
// While the soundfile is loading, you set the event
myLoader.on('finish', function(){ alert('All assets loaded.'); });
// The soundfile may not yet be ready loading and yet you are trying to play it!!
myLoader.getFile('mysound').play();
所以我认为解决方案如下(例如):
var myLoader = html5Preloader();
myLoader.on('finish', function(){
// Start playing the sound once it's finished loading
myLoader.getFile('mysound').play();
});
myLoader.addFiles('mysound*:rattle1.ogg||rattle1.mp3');