繁体   English   中英

用Java画布制作弹跳球

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM