某乎的登录界面代码--JS
来源:互联网 发布:牵手算确定关系吗 知乎 编辑:程序博客网 时间:2024/06/02 23:36
原地址 . http://www.qdfuns.com/notes/25573/c983d0def24ac412b22d53a9bec3ae89.html
<!DOCTYPE html><html><head><meta charset="UTF-8"><title>canvas</title><style type="text/css">body{text-align: center;background: #F7FAFC;overflow: hidden;background: #fff;}</style></head><body><canvas id="Mycanvas"></canvas></body></html><script>//定义画布宽高和生成点的个数var WIDTH = window.innerWidth,HEIGHT = window.innerHeight,POINT = 35;var canvas = document.getElementById('Mycanvas');canvas.width = WIDTH,canvas.height = HEIGHT;var context = canvas.getContext('2d');context.strokeStyle = 'rgba(0,0,0,0.02)',context.strokeWidth = 1,context.fillStyle = 'rgba(0,0,0,0.05)';var circleArr = [];//线条:开始xy坐标,结束xy坐标,线条透明度function Line(x, y, _x, _y, o) {this.beginX = x,this.beginY = y,this.closeX = _x,this.closeY = _y,this.o = o;}//点:圆心xy坐标,半径,每帧移动xy的距离function Circle(x, y, r, moveX, moveY) {this.x = x,this.y = y,this.r = r,this.moveX = moveX,this.moveY = moveY;}//生成max和min之间的随机数function num(max, _min) {var min = arguments[1] || 0;return Math.floor(Math.random() * (max - min + 1) + min);}// 绘制原点function drawCricle(cxt, x, y, r, moveX, moveY) {var circle = new Circle(x, y, r, moveX, moveY)cxt.beginPath()cxt.arc(circle.x, circle.y, circle.r, 0, 2 * Math.PI)cxt.closePath()cxt.fill();return circle;}//绘制线条function drawLine(cxt, x, y, _x, _y, o) {var line = new Line(x, y, _x, _y, o)cxt.beginPath()cxt.strokeStyle = 'rgba(0,0,0,' + o + ')'cxt.moveTo(line.beginX, line.beginY)cxt.lineTo(line.closeX, line.closeY)cxt.closePath()cxt.stroke();}//初始化生成原点function init() {circleArr = [];for (var i = 0; i < POINT; i++) {circleArr.push(drawCricle(context, num(WIDTH), num(HEIGHT), num(15, 2), num(10, -10) / 40, num(10, -10) / 40));}draw();}//每帧绘制function draw() {context.clearRect(0, 0, canvas.width, canvas.height);for (var i = 0; i < POINT; i++) {drawCricle(context, circleArr[i].x, circleArr[i].y, circleArr[i].r);}for (var i = 0; i < POINT; i++) {for (var j = 0; j < POINT; j++) {if (i + j < POINT) {var A = Math.abs(circleArr[i + j].x - circleArr[i].x),B = Math.abs(circleArr[i + j].y - circleArr[i].y);var lineLength = Math.sqrt(A * A + B * B);var C = 1 / lineLength * 7 - 0.009;var lineOpacity = C > 0.03 ? 0.03 : C;if (lineOpacity > 0) {drawLine(context, circleArr[i].x, circleArr[i].y, circleArr[i + j].x, circleArr[i + j].y, lineOpacity);}}}}}//调用执行window.onload = function () {init();setInterval(function () {for (var i = 0; i < POINT; i++) {var cir = circleArr[i];cir.x += cir.moveX;cir.y += cir.moveY;if (cir.x > WIDTH) cir.x = 0;else if (cir.x < 0) cir.x = WIDTH;if (cir.y > HEIGHT) cir.y = 0;else if (cir.y < 0) cir.y = HEIGHT;}draw();}, 16);}</script>
0 0
- 某乎的登录界面代码--JS
- 简单的登录界面代码!
- 【总结】模仿知乎登录注册界面制作时遇见的一些微小的问题
- 登录知乎的爬虫
- JS 退出系统并跳转到登录界面的实现代码
- VB中设置登录界面的代码
- 两个IOS的登录界面小代码
- 登录+注册界面的实现(代码)
- 代码实现android的一个登录界面
- 超市登录界面代码
- java登录界面代码
- AngularJs登录界面代码
- 使用zepto.js,纯JS写的登录界面
- JS记录用户登录次数的代码
- 判断手机端登录的js代码
- 注册页面和登录界面所需的JS
- js写登录界面 回车直接登录
- C# 登录界面代码_Login
- 三款Linux下最好的看图工具GPicView,sxiv,feh
- Apple Thunderbolt 软件更新导致部份使用者发生开机冻结问题
- 电脑总是蓝屏并且提示:beginning dump of physical memory是怎么回事?
- 1009. 说反话 (20)
- 精品推荐 中国大陆开源镜像站地址汇总
- 某乎的登录界面代码--JS
- 刚开通博客,总要说几句话吧!
- Linux系统下挂载、卸载新硬盘的方法
- js中去除字符串中为undefined的字符串
- linux mkfs命令参数及用法详解---linux格式化文件系统命令
- 在Linux系统下移动硬盘的挂载及卸载方法
- 网友抢注chinazism.com域名 担心被日本鬼子注册用于非法行为
- 创业者经常遇到的六大误区
- Ubuntu12.04 安装apache+php+mysql服务器