优秀的canvas背景特效网站(基于canvas实现超炫酷的流水灯效果)
类别:编程学习 浏览量:2637
时间:2022-01-27 01:34:46 优秀的canvas背景特效网站
基于canvas实现超炫酷的流水灯效果本文实例为大家分享了基于canvas实现超炫酷的流水灯效果的具体代码,供大家参考,具体内容如下
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>基于canvas超炫酷的流水灯效果</title> <style> *{ margin: 0; padding: 0; } canvas{ border: 1px solid red; width: 100%; height: 100%; } </style> </head> <body onselectstart="return false"> <!-- 添加canvas标签,并加上红色边框以便于在页面上查看 --> <canvas id="myCanvas" > 您的浏览器不支持canvas标签。 </canvas> <script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script> <script type="text/javascript"> var canvas = document.getElementById("myCanvas"); var ctx = canvas.getContext("2d"); var cx1 = canvas.offsetLeft; var cy1 = canvas.offsetTop; var cx2 = canvas.offsetLeft + canvas.offsetWidth; var cy2 = canvas.offsetTop + canvas.offsetHeight; var bbox = canvas.getBoundingClientRect(); $(function(){ var direction = 'right',x = y = right_count = down_count = left_count = up_count = 0; ctx.beginPath(); //开始一个新的绘制路径 ctx.moveTo(x, y); //定义直线的起点坐标为(0,0) setInterval(function(){ ctx.strokeStyle = '#'+Math.floor(Math.random()*16777215).toString(16); switch(direction){ case 'right': if(x >= 300 - right_count){ direction = 'down'; right_count++; }else{ x++; } break; case 'down': if(y >= 150 - down_count){ direction = 'left'; down_count++; }else{ y++; } break; case 'left': if(x <= left_count){ direction = 'up'; left_count++; }else{ x--; } break; case 'up': if(y <= up_count + 1){ direction = 'right'; up_count++; }else{ y--; } break; } ctx.lineTo(x, y); ctx.lineCap = 'round'; ctx.lineWidth = 1; //设置线段的宽度 ctx.stroke(); //沿着坐标点顺序的路径绘制直线 }, 1); }) </script> </body> </html>
效果截图:
流水灯时刻跑着,这里主要是绕圈圈
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持开心学习网。
您可能感兴趣
- canvas如何在网页上画图形(canvas绘制图片drawImage使用方法)
- canvas进阶教程(原生canvas制作画图小工具的踩坑和爬坑)
- html5+canvas动画(解析html5 canvas实现背景鼠标连线动态效果代码)
- html5的canvas图形绘制技术(详解HTML5 Canvas标签及基本使用)
- canvas绘制二进制图片(Canvas获取视频第一帧缩略图的实现)
- canvas心形水波(Canvas波浪花环的示例代码)
- canvas如何开启(canvas实现手机的手势解锁的步骤详细)
- 使用canvas的好坏(关于canvas绘制模糊问题的解决方法)
- html5的canvas图形绘制技术(导出HTML5 Canvas图片并上传服务器功能)
- canvas绘制分辨率(通过canvas转换颜色为RGBA格式及性能问题的解决)
- canvas绘图白屏或者元素有缺失(高清屏中使用Canvas绘图出现模糊的问题及解决方法)
- htmlcanvas的使用(html2canvas生成清晰的图片实现打印的示例代码)
- 使用canvas画个正方形(canvas绘制树形结构可视图形的实现)
- jscanvas画折线图(js+canvas实现代码雨效果)
- canvas如何调试(关于canvas.toDataURL 在iOS运行失败的问题解决)
- canvas绘图问题(记一次高分屏下canvas模糊问题)
- 红色代表什么(红色代表什么寓意)
- 蓝天代表什么(蓝天代表什么生肖)
- 今天要吃什么(今天要吃什么菜)
- 营养餐是什么(学校营养餐是什么)
- 谁说女子不如男 范冰冰演的武则天只是其一,另外两位你认识吗(谁说女子不如男)
- 杯酒人生---瓦伦丁酒杯和奥丁格啤酒(杯酒人生---瓦伦丁酒杯和奥丁格啤酒)
热门推荐
- mysql 5.5.27 winx64安装配置方法图文教程(mysql 5.5.27 winx64安装配置方法图文教程)
- sqlleftjoin详解(SQL JOIN 连接详细介绍及简单使用实例)
- access标签名称属性(htaccess 防盗链,防止目录浏览等10大技巧)
- css里margin是什么意思(正确理解CSS中的margin合并的用法)
- dede收录查询插件(dede:likearticle文章标签和tag标签关联错误解决方法)
- sqlserver表空间占用率(SQL Server获取磁盘空间使用情况)
- laravel框架如何查询空的信息(Laravel中validation验证 返回中文提示 全局设置的方法)
- mybatis为什么还用mysql(关于MyBatis连接MySql8.0版本的配置问题)
- python 串口图形化(python使用MQTT给硬件传输图片的实现方法)
- dedecms系统设置参数(织梦DedeCMS文档点击数过万后直接显示以“万”为单位的数值的方法)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9