所以我在HTML5中制作了一些接一个播放的游戏,游戏使用loadgame函数和preloadJS库每5分钟更改一次。 gameID是要加载的新游戏的文件名。会发生的是,如果互联网非常慢,则不会触发任何事件,并且永远不会加载下一个游戏。
loadgame = function()
{
canvas = document.getElementById("canvas");
stage = new createjs.Stage(canvas);
loader = new createjs.LoadQueue(false);
loader.loadFile({src:gameID+".js", type:"javascript"}, true);
loader.addEventListener("complete", prehandleComplete);
loader.addEventListener("error", handleLoadError1);
loader.addEventListener("fileerror", handleLoadError1);
}
答案 0 :(得分:0)
我快速搜索了错误,found some results表示数据的mimetype或charset中可能存在导致错误的内容。
与我上面链接的帖子中的示例解决方案类似,您可以将自定义Content-Type标头附加到任何加载项:
loader.loadFile({
src:gameID+".js",
headers:{"Content-Type" : "application/json; charset=utf-8"}
});
请注意,此加载项中不需要“type”属性(扩展名将为您确定),也不需要将true
作为第二个参数传递,因为这是默认值值。
答案 1 :(得分:0)
这是因为加载文件超时,并且由于某种原因它不会触发事件。
loader.loadFile({src:gameID+".js", type:"javascript", loadTimeout:"60000"}, true);