代码雨
时间:2020-07-14
本文章向大家介绍代码雨,主要包括代码雨使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
CSS: <style> *{ margin: 0; padding: 0; } html{ overflow: hidden; } </style> body: <canvas id="canvas" style="background-color: #111111;"></canvas> <script> // 获取画布对象 var canvas = document.querySelector('canvas'); // 获去画布上下文 var cxt = canvas.getContext('2d'); // 获取浏览器窗口的宽度或者高度 var W = window.innerWidth; var H = window.innerHeight; // 设置canvas的宽高 canvas.width = W; canvas.height = H; // 设置字体大小 var fontSize = 16; // 计算窗口可以排放的列 var colums = Math.floor(W / fontSize); // 记录文字坐标 var drop = []; // 给每一字文字一个初始起点的位置 for (var i = 0; i < colums; i++) { drop.push(0); } console.log(drop); // 设置代码雨的运行轨迹 var str = 'dfsgwehfhjfwtwwtwgfgwtwr2rwfefswgwtwt'; // 绘画的函数 function draw(){ cxt.beginPath(); cxt.fillStyle = "rgba(0,0,0,0,05)"; cxt.fillRect(0,0,W,H); cxt.beginPath(); cxt.font = fontSize + 'px + 微软雅黑'; cxt.fillStyle = '#22ff22'; for (var i = 0; i < colums; i++) { var index = Math.floor(Math.random()*str.leng); var x = i*fontSize; var y = drop[i]*fontSize; console.log('x:' + x + '......' + 'y:' + y); cxt.fillText(str[index],x,y); // 改变时间,就要改变每一次的起点 if (y >= canvas.height && Math.random() > 0.99) { drop[i] = 0; } drop[i]++; } }; draw(); setInterval(draw30);
原文地址:https://www.cnblogs.com/zycs/p/13301065.html
- 借用 疯狂秀才 的页面,修改了一下自然框架后台管理的页面。
- PDF.NET(PWMIS数据开发框架)之SQL-MAP目标和规范
- PDF.NET数据开发框架 之SQL-MAP使用存储过程
- 用接口实现事件的一种方法,只是玩玩。
- 国内研究人员首次Wifi重大漏洞利用实现 | Krack攻击测试套件打包
- 想成为优秀程序员必知的要点
- Attribute(特性),怎么用才更好?
- 如何使用Airgeddon搭建基于软件的WIFI干扰器
- 还在写SQL的同志,去喝杯咖啡吧!
- 使用XSD编写具有智能提示的XML文件(以SQL-MAP脚本为实例)
- 一个利用CVE-2017-11292的APT样本技术分析(一)
- Attribute(特性),怎么用才更好? —— 字段编号被误解了
- PDF.NET的SQL日志 ASP.net 路径问题 详解
- 【自然框架】稳定版beta1——源码下载,Demo说明
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 浙大版《C语言程序设计(第3版)》题目集 习题7-2 求一批整数中出现最多的个位数字
- 浙大版《C语言程序设计(第3版)》题目集 习题7-3 判断上三角矩阵
- 浙大版《C语言程序设计(第3版)》题目集 习题7-4 求矩阵各行元素之和
- 浙大版《C语言程序设计(第3版)》题目集 习题7-6 统计大写辅音字母
- 浙大版《C语言程序设计(第3版)》题目集 习题7-7 字符串替换
- 浙大版《C语言程序设计(第3版)》题目集 习题8-10 输出学生成绩
- 浙大版《C语言程序设计(第3版)》题目集 习题9-1 时间换算
- 浙大版《C语言程序设计(第3版)》题目集 习题9-3 平面向量加法
- 浙大版《C语言程序设计(第3版)》题目集 习题9-4 查找书籍
- 浙大版《C语言程序设计(第3版)》题目集 习题9-5 通讯录排序
- 浙大版《C语言程序设计(第3版)》题目集 习题7-5 找鞍点
- 浙大版《C语言程序设计(第3版)》题目集 练习5-1 求m到n之和
- 手把手教你用Python爬取快递100查询你的物流信息
- 浙大版《C语言程序设计(第3版)》题目集 练习5-2 找两个数中最大者
- 浙大版《C语言程序设计(第3版)》题目集 练习5-3 数字金字塔