Javascript游戏,模块raph​​ael没有定义

Her*_*son 0 javascript raphael

我在这里开发一个游戏引擎:http: //synodins.com/apps/tank_fight 但是现在,由于某种原因,它不再运行了.我无法启动Raphael模块,当我使用mozilla web调试器运行网站时,我得到"Raphael未定义".但这没有任何意义,因为它在raphael.js模块中的定义非常明确.

此外,在第二次尝试时,游戏运行正常.并没有明确的模式来说明它的工作原理.
我在尝试启动raphael之前打印出Hello world 1,并在尝试之后打招呼世界2.
谁能看出问题是什么?

Pau*_*her 5

load_script调用块以异步方式加载脚本.这就是为什么似乎没有明确的模式.

无法保证raphael.js Raphael在行时加载(因此,已定义):

var playing_area = Raphael(0,50,1600,1600);
Run Code Online (Sandbox Code Playgroud)

叫做.

在尝试使用外部脚本中定义的变量之前,您应该等到整个文档准备就绪.在正常情况下,这是onload文件的事件.像jquery这样的各种库也提供了自己的"就绪"事件,如果你使用它们,你可以绑定它们.

是否有任何理由以您的方式加载脚本,而不是简单地使用标记,如下所示?

<script src="raphael.js"></script>
Run Code Online (Sandbox Code Playgroud)