Canvas可以在HTML文件中工作,但不能在javascript文件中工作

Canvas可以在HTML文件中工作,但不能在javascript文件中工作,javascript,html,canvas,Javascript,Html,Canvas,我刚读完我的第一本JavaScript书《头先HTML5》,我觉得自己很傻。如果我将脚本放在HTML文件中,它可以工作,但不能在单独的JavaScript文件中工作 HTML文件: <!DOCTYPE html> <head> <meta charset="UTF-8"> <script src="canArt.js"></script> </head> <body> <canvas id="canvas"

我刚读完我的第一本JavaScript书《头先HTML5》,我觉得自己很傻。如果我将脚本放在HTML文件中,它可以工作,但不能在单独的JavaScript文件中工作

HTML文件:

<!DOCTYPE html>
<head>
<meta charset="UTF-8">
<script src="canArt.js"></script>
</head>
<body>
<canvas id="canvas" width="800" height="800"></canvas> 
</body>
</head>

请提供帮助。

您可以立即执行
init
函数,方法是包括参数并将
init
的结果分配给
onload
处理程序,该结果为空

更改:

window.onload = init();
致:


通过包含参数并将
init
的结果分配给
onload
处理程序,您可以立即执行
init
函数

更改:

window.onload = init();
致:


换句话说,就是说
=init()
立即执行init函数,并将其返回值分配给window.onload,同时表示
=init将函数本身指定为onload处理程序。没问题:)-很高兴我能提供帮助,换句话说,就是说
=init()
立即执行init函数,并将其返回值分配给window.onload,同时表示
=init将函数本身指定为onload处理程序。没问题:)-很高兴我能帮上忙
window.onload = init;