[英]Make a Bouncing Ball with Canvas in Javascript
如何使球开始向上运动?
我在这里迷失了方向,并尝试了许多事情,而且我知道我缺少一些简单的东西。
我知道这是我需要更改的代码部分,它与x的if语句有关,但是就我所知。
function update() {
x += 1;
y += yspeed;
yspeed += gravity;
if ( y >= context.canvas.height)
{
yspeed *= -1;
}
if ( x <= 0 || x >= context.canvas.width)
{
x = (x + context.canvas.width) % context.canvas.width;
}
}
现在球开始向下弹跳。 如何将其更改为开始向上反弹?
yspeed决定球的垂直速度-必须在某处定义。 尝试将其更改为负值,例如-10。 它实际上将其拉到地面的是重力 。
这是一个示例[点击“运行代码段”以查看实际效果]:
var gravity = 1; var yspeed = -10; var x = 10; var y = 50; document.getElementById("ball").style.left = x + "px"; document.getElementById("ball").style.top = y + "px"; function loop() { document.getElementById("ball").style.left = x + "px"; document.getElementById("ball").style.top = y + "px"; x += 1; y += yspeed; yspeed += gravity; } var interval = setInterval(loop, 60);
<svg height="20" width="20" id="ball" style="position:relative"> <circle cx="10" cy="10" r="10" fill="red" /> </svg>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.