jquery canvas深海乌贼鼠标交互游动动画效果代码

代码语言:html

所属分类:动画

代码描述:jquery canvas深海乌贼鼠标交互游动动画效果代码

代码标签: jquery canvas 深海 乌贼 鼠标 交互 游动 动画

下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开

<!DOCTYPE html>
<html lang="en">

<head>
   
<meta charset="UTF-8">
   
<style>
        body
{background:#333;margin:0;overflow:hidden}canvas{background:black}
   
</style>
</head>

<body>

   
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/jquery-3.2.1.min.js"></script>
   
<script>
        var App = {};
 jQuery(document).ready(function() {
     App.setup();
     App.frame = function() {
         App.update();
         window.requestAnimationFrame(App.frame)
     };
     App.frame();
     jQuery("canvas#ourCanvas").on("click", function(a) {
         App.hasUserClicked = !App.hasUserClicked
     });
     jQuery("canvas#ourCanvas").on("mousemove", function(a) {
         App.target.x = a.pageX;
         App.target.y = a.pageY
     })
 });
 App.setup = function() {
     var a = document.createElement("canvas");
     a.height = window.innerHeight;
     a.width = window.innerWidth;
     a.id = "ourCanvas";
     document.body.appendChild(a);
     this.ctx = a.getContext("2d");
     this.width = a.width;
     this.height = a.height;
     this.stepCount = 0;
     this.hasUserClicked = false;
     this.xC = a.width / 2;
     this.yC = a.height / 2;
     this.target = {
         x: this.xC,
         y: this.yC,
         radius: 20
     };
     this.armsPop = 20;
     this.arms = [];
     for (var b = 0; b < this.armsPop; b++) {
         this.arms.push([])
     }
     this.initialBirth();
     this.gravity = -1;
     this.springStiffness = 0.5;
     this.viscosity = 0.1;
     this.isElastic = false
 };
 App.initialBirth = function() {
     for (var b = 0; b < this.arms.length; b++) {
         var a = this.arms[b];
         var e = 20 + Math.ceil(20 * Math.random());
         for (var c = 0; c < e; c++) {
             var f = this.width * Math.random();
             var g = this.heig.........完整代码请登录后点击上方下载按钮下载查看

网友评论0