黑客帝国雨效果JS
黑客帝国雨效果JS。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
*{margin: 0;padding: 0;}
body{overflow: hidden;}
canvas{background: #111;}
</style>
</head>
<body>
<canvas id="canvas"></canvas>
<script>
var canvas = document.getElementById("canvas");
var context = canvas.getContext("2d"); var W = window.innerWidth;
var H = window.innerHeight; canvas.width = W;
canvas.height = H; var fontSize = 16;
//计算列
var colunm = Math.floor(W/fontSize);
//console.log(colunm);
//存储Y值
var drops = []; for(var i = 0;i<colunm;i++){
drops[i] = 1;
}
//console.log(...drops)
var str = "Welcome JavaScript"; //let tempRandom = Math.random()*str.length;
//console.log(tempRandom,Math.floor(tempRandom))
//把文字画到屏幕上
function draw(){
context.fillStyle = "rgba(0,0,0,0.05)";//文字随机出现的背景
context.fillRect( 0, 0, W, H);
context.font = "700 " + fontSize + "px ARIAL";
context.fillStyle = "#00cc33";
//context.fillStyle = randColor();
//console.log("你好");
for(var i = 0; i<colunm; i++){
//让字符串中的内容随机出现
var index = Math.floor(Math.random()*str.length);
var x = i*fontSize;
var y = drops[i]*fontSize;
context.fillText(str[index],x,y);
console.log(str[index],x,y);
if(y>=canvas.height && Math.random()>0.99){
drops[i] = 0;
}
drops[i]++;
}
} function randColor(){
var r = Math.floor(Math.random()*256);
var g = Math.floor(Math.random()*256);
var b = Math.floor(Math.random()*256);
return "rgb("+r+","+g+","+b+")";
} draw();
setInterval(draw,20);
</script>
</body>
</html>
效果截图:

黑客帝国雨效果JS的更多相关文章
- theMatrix代码雨效果
做了一个代码雨效果放在个人主页: https://lanleilin.github.io/lanGallery/index.html 代码: <!DOCTYPE html> <ht ...
- 页面常见效果js实现
2015.12.2 页面常见效果js实现 [有没有觉得很坑,[笑哭,邮箱写上]] 复习: Js内置对象: 1.浏览器对象 window document history location event ...
- css3 圣诞红包雨效果
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- 右上角鼠标滑过展开收缩动画效果js代码的演示页面
http://files.cnblogs.com/files/tanlingdangan/top_right.rar.gz 右上角鼠标滑过展开收缩动画效果js代码的演示页面http://www.51x ...
- js仿黑客帝国文字数字雨效果
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- JQuery实现——黑客帝国代码雨效果
效果如你所见就是本页面上方那样的效果 实现方法来自一个印度小伙纸,学习完我也没总结一下,今儿个补上 如何实现,大家右键查看源码复制即可,不过学习的过程还是要总结总结. 下面通过另外两个小例子,一步一步 ...
- JAVA实现黑客帝国代码雨效果
import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import j ...
- 三种比较好玩的黑客效果JS代码(摘取)
<html> <head> <title>The Matrix</title> <script src="http://ajax.goo ...
- 最牛的打字效果JS插件 typing.js
最新在做公司的一个项目,需要实现一个敲打代码的动画效果,粗意味比较简单,果断自己直接开写,写着写着发现是一个坑.需要支持语法高亮,并不能直接简单的用setTimeout来动态附件innerHTML.苦 ...
随机推荐
- php 换行 PHP_EOL
在unix世界换行就用/n来代替,但是windows为了体现他的不同,就用/r/n,更有意思的是在mac中用/r.因此unix系列用 /n,windows系列用 /r/n,mac用 /r,这样就用你写 ...
- C#基础之委托
委托常常和事件在一起使用,可以理解委托是方法的容器,事件则是委托的另一种表现形式.委托和事件虽然写得还比较多,不过也只是用的熟练而已,趁周末没课好好巩固下基础,一点一点积累吧. 1.一个简单的小例子 ...
- easyui树动态加载参考
这篇文章是拷贝的,多谢原作者 友情连接:http://www.jb51.net/article/28771.htm var treeTitle = '选择列表'; var treeUrl = '../ ...
- 1、maven打包 install package deploy区别
maven package:打包到本项目,一般是在项目target目录下.如果a项目依赖于b项目,打包b项目时,只会打包到b项目下target下,编译a项目时就会报错. maven install:打 ...
- Unity LineRenderer制作画版
Source: using System.Collections; using System.Collections.Generic; using UnityEngine; public class ...
- 「日常训练」The Necklace(UVA-10054)
代码 for(int i=0; i!=n; ++i) { int u = cin.nextInt(); int v = cin.nextInt(); edges.add(new Edge(u,v)); ...
- 利用 Intel Realsense做SLAM开发(一)
最近手里拿到一台Realsense D435,就是这个: https://click.intel.com/intelr-realsensetm-depth-camera-d435.html 所以准备拿 ...
- mac安装pkg 一直“正在验证” 卡着
今天换了新mac, 但是之前wireshark(抓包工具) 不能用了 ,要安装Xquartz. 下载之后一直卡着, 网上找了半天没有解决方法. 最后我重启一下就好了... 重启一下. 2. 15款ma ...
- PHPCMS V9 的手机门户wap绑定单页面
当前的Phpcms V9手机网站的设置还有点弱,绑定的栏目不能设置选择模板,而且不能绑定单页面page.不过可以自定义做到绑定单页面page这一个功能:1.修改phpcms\modules\wap\i ...
- CsvHelper文档-6类型转换
CsvHelper文档-6类型转换 CsvHelper使用类型转换器来转换string到对象,或者对象到string: ITypeConverter 类型转换器的结构,必须实现: public int ...