zoukankan      html  css  js  c++  java
  • 帆布小球碰壁效果

    <!doctype html>
    <html>
    <head>
    <meta charset="utf-8">
    <meta name="author" content="http://www.softwhy.com/" />
    <title>帆布小球碰壁效果</title>

    <style>

    canvas {
    border:2px dotted #ccc;
    }
    </style>
    </head>
    <body>
    <canvas id="canvas" width="300" height="450"></canvas>
    <script type="text/javascript">
    var canvas = document.getElementById('canvas');
    var ctx = canvas.getContext('2d');
    var raf;

    var ball = {
    x: 100,
    y: 100,
    vx: 5,
    vy: 2,
    radius: 25,
    color: 'blue',
    draw: function() {
    ctx.beginPath();
    ctx.arc(this.x, this.y, this.radius, 0, Math.PI * 2, true);
    ctx.closePath();
    ctx.fillStyle = this.color;
    ctx.fill();
    }
    };

    function draw() {
    ctx.clearRect(0, 0, canvas.width, canvas.height);
    ball.draw();
    ball.x += ball.vx;
    ball.y += ball.vy;

    if (ball.y + ball.vy > canvas.height ||
    ball.y + ball.vy < 0) {
    ball.vy = -ball.vy;
    }
    if (ball.x + ball.vx > canvas.width ||
    ball.x + ball.vx < 0) {
    ball.vx = -ball.vx;
    }

    raf = window.requestAnimationFrame(draw);
    }

    canvas.addEventListener('mouseover', function(e) {
    raf = window.requestAnimationFrame(draw);
    });

    canvas.addEventListener("mouseout", function(e) {
    window.cancelAnimationFrame(raf);
    });

    ball.draw();
    </script>
    </body>
    </html>

  • 相关阅读:
    Linux命令之vi
    CentOS7 查看IP
    Linux下mysql的命令
    @RequestMapping注解的参数说明
    springboot处理不同域的前端请求
    vue-cli4 取消关闭eslint 校验代码
    springmvc请求乱码
    访问静态资源报404错误
    eclipse创建Maven项目时pom.xml报错
    spring中的xml配置文件里报错
  • 原文地址:https://www.cnblogs.com/web-chuanfa/p/9131377.html
Copyright © 2011-2022 走看看