Pum*_*n_M 5 javascript particles
在我的控制台我得到的错误:"遗漏的类型错误:不能为空的读取属性'的getContext’"我只是找不到我做了错误......或者我做了什么错.那么也许你可以帮我找到它?请帮忙 :)
enter code here
var canvas = document.getElementById("myCanvas");
var ctx = canvas.getContext("2d");
var cW = canvas.width = 1000;
var cH = canvas.height = 500;
var particleAmount = 10;
var particles = [];
for(var i=0;i<particleAmount;i++) {
particles.push(new particle());
}
function particle() {
this.x = (Math.random() * (cW-(40*2))) + 40;
this.y = (Math.random() * (cH-(40*2))) + 40;
this.xv = Math.random()*20-10;
this.yv = Math.random()*20-10;
}
function draw () {
ctx.fillStyle = "black";
ctx.fillRect(0,0,cW,cH);
for(var ii=0;ii<particles.length;ii++){
var p = particles[ii];
ctx.fillStyle = "red";
ctx.beginPath();
ctx.arc(p.x,p.y,40,Math.PI*2,false);
ctx.fill();
}
}
setInterval(draw,30);
Run Code Online (Sandbox Code Playgroud)
该错误基本上意味着HTML和JavaScript代码没有正确协作,或者只是没有正确加载脚本.
试试这个:
function init() {
// Run your javascript code here
}
document.addEventListener("DOMContentLoaded", init, false);
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助.
答案就在问题后面的评论里!其他人也将其作为答案发布在下面,但全部归功于:@elclanrs
\n\n“对,所以画布还不存在。在画布元素后面加载脚本。\xe2\x80\x93 elclanrs Sep 13 \'14 at 22:43”
\n