不能显示画布对象
Can't display canvas object
伙计们,这是一个函数,应该在框架上显示一个红色的球,但它不是这样做的,我正在看一个教程,我做的一切都和他做的一样,但我不知道这里的问题是什么。求你了,我需要知道。如果有人能理解,请帮助…
var canvas,ctx,w,h,game=true;
var ball;
var BALL = function(x,y){
this.x = x;
this.y = y;
this.color = "red";
this.radius = 10;
this.vx = 3;
this.vy = -4;
}
window.onload = init;
function init() {
canvas = document.getElementById("canvas");
w = canvas.width;
h = canvas.height;
ctx = canvas.getContext('2d');
ball = new BALL(w/2,h/2+50);
beginGame();
}
function beginGame(){
if(game){
ctx.clearRect(0,0,w,h);
ball.x+=ball.vx;
ball.y+=ball.vy;
if((ball.x+ball.radius)+ball.vx>w || (ball.x-ball.radius)+ball.vx<0){
ball.vx = -ball.vx;
}
ctx.fillStyle = ball.color;
ctx.beginPath();
ctx.arc(ball.x,ball.y,ball.radus,0,2*Math.PI,true);
ctx.closePath();
ctx.fill();
window.requestAnimationFrame(beginGame);
}else{
//Game Over
}
}// End of beginGame function
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>არკანოიდი</title>
<script src='tools.js'></script>
<script src='jquery-1.11.2.min.js' language='javascript' > </script>
<style>
canvas {
border: 1px solid silver;
}
</style>
</head>
<canvas id="canvas" width="800" height="600"></canvas>
<body>
</body>
</html>
我不知道它是否会修复一切,但是你的画布在你的body标签之外。
1. 不要使用language='javascript'。这是不必要的。2. 如果你想显式地声明它为javascript,那么使用type="text/javascript"。这是自动的情况,所以你甚至不需要这样做。3.将画布放入body标签中。4. 使用窗口。addEventListener("load", init)代替window.onload(init)5.startgame函数内部:
function beginGame()
{
// previous lines omitted...
ball = new BALL(x, y);
// other lines here...
}
相关文章:
- 如何使用内部对象构造对象
- 添加到Javascript中对象的对象中
- 在JS中围绕旋转对象旋转对象
- “;Stub对象”;对象不符合检查点's条件
- 向Angular作用域对象添加对象数组——TypeError
- Javascript JSON对象替换对象中的字符串
- 在HTML5画布中,是否可以围绕旋转对象旋转对象
- 动态创建嵌套的JSON对象父对象和子对象
- 如何筛选所有属性都是对象的对象
- javascript:对具有对象的对象进行排序并读取它们
- 如何将对象插入对象列表的开头,当它有 unshift 不是函数错误
- 在 Forerunner 数据库集合中创建主键时,key 属性是否可以位于集合对象的对象内部
- 使用 Javascript 对象作为对象键
- PhantomJS 控制台.log对象输出 [对象对象]
- 如何创建行为类似于本机对象的对象
- IE8对象当对象包含null值时应出现错误
- 循环遍历以数组作为值的对象的对象
- 递归没有完全遍历具有嵌套对象的对象
- 按对象的 ID 删除对选定对象的对象引用
- 当在JSON中使用包含对象的对象与对象数组时,可接受的约定是什么