JS实现多彩圆点气泡动态背景

一段简短的JS代码,利用html5的canva动画特性,实现多彩圆点气泡动态背景。

网上流传的那种动态背景使用的是easyBackground这种js库,原理是一样的~

效果图

代码

页面中插入如下js代码,或者并入到js文件并引入到页面也可:

var canvas=document.getElementById("canvas"); var cxt=canvas.getContext("2d"); function Dot(){ this.alive=true;this.x=Math.round(Math.random()*canvas.width); this.y=Math.round(Math.random()*canvas.height); this.diameter=Math.random()*10.8; this.ColorData={Red:Math.round(Math.random()*255),Green:Math.round(Math.random()*255),Blue:Math.round(Math.random()*255)}; this.alpha=0.1; this.color="rgba("+this.ColorData.Red+", "+this.ColorData.Green+","+this.ColorData.Blue+","+this.alpha+")"; this.velocity={x:Math.round(Math.random()<0.5?-1:1)*Math.random()*0.7,y:Math.round(Math.random()<0.5?-1:1)*Math.random()*0.7} } Dot.prototype={ Draw:function(){ cxt.fillStyle=this.color;cxt.beginPath(); cxt.arc(this.x,this.y,this.diameter,0,Math.PI*2,false);cxt.fill() }, Update:function(){ if(this.alpha<0.8){ this.alpha+=0.01; this.color="rgba("+this.ColorData.Red+", "+this.ColorData.Green+","+this.ColorData.Blue+","+this.alpha+")" } this.x+=this.velocity.x; this.y+=this.velocity.y; if(this.x>canvas.width+5||this.x<0-5||this.y>canvas.height+5||this.y<0-5){this.alive=false} } }; var Event={ rArray:[], Init:function(){ canvas.width=window.innerWidth; canvas.height=window.innerHeight; for(var x=0;x<150;x++){ this.rArray.push(new Dot()) } this.Update() }, Draw:function(){ cxt.clearRect(0,0,canvas.width,canvas.height); this.rArray.forEach(function(dot){dot.Draw()}) }, Update:function(){ if(Event.rArray.length<150){ for(var x=Event.rArray.length;x<150;x++){Event.rArray.push(new Dot())} } Event.rArray.forEach(function(dot){dot.Update()}); Event.rArray=Event.rArray.filter(function(dot){return dot.alive}); Event.Draw(); requestAnimationFrame(Event.Update) } }; window.οnresize=function(){Event.rArray=[]; canvas.width=window.innerWidth; canvas.height=window.innerHeight}; Event.Init(); [/php]

然后页面插入canvas动画层的锚点,ID要和js中设置的一致,这里是canvas。

[php]

大功告成~

html列表圆点背景,JS实现多彩圆点气泡动态背景相关推荐

  1. 有趣的HTML实例(八) 一个很有趣的动态背景(css+js)

    小时候,谁都觉得自己的未来闪闪发光,不是吗?但是一旦长大,没有一件事会遂自己心愿. --<被嫌弃的松子的一生> 目录 一.前言 二.往期作品回顾 三.作品介绍 四.本期代码介绍 五.效果显 ...

  2. html怎样实现动态背景效果,利用jQuery实现动态背景特效

    特效描述:利用jQuery实现 动态背景特效.利用jQuery实现动态背景特效 代码结构 1. 引入CSS 2. 引入JS 3. HTML代码 Example 1 ooh, pretty. Notic ...

  3. li前面的原点或者方的样式修改html中列表项li所显示的圆点的颜色?,以及相关样式的设定...

    如何修改html中列表项li所显示的圆点的颜色?,以及相关样式的设定   这是li标签自带的圆点的颜色改变,代码如下: .centerbt li{ content:"."; col ...

  4. 去掉无序列表前默认加上的小圆点——实战练习需到的问题解决办法mark

    需求如题,去掉无序列表前默认加上的小圆点 1.在CSS中对 li 标签设置 list-style-type:none; .contact-list li {list-style-type: none; ...

  5. 去掉无序列表 l i 前面的小圆点:

    去掉无序列表 l i 前面的小圆点: list-style: none;

  6. JS实现线条动态背景

    [Top] JS实现线条动态背景 线条随机运动,鼠标移动过程中,有吸附性,话不多说,直接上代码吧! !function () {let num = 100;//设置所画线的颜色let colorLin ...

  7. html弹出层全覆盖滚动条,JS弹出层遮罩,隐藏背景页面滚动条细节优化分析

    一.去除滚动条方法 给body添加overflow:hidden属性即可,IE6.7下不会生效,需要给html增加overflow:hidden属性 样式中需要对IE6.7及其它浏览器用hack辨别, ...

  8. 设置ListCtrl列表控件其中某一行的字体和背景颜色

    设置ListCtrl列表控件其中某一行的字体和背景颜色,可以最终达到如下效果: 操作步骤如下所示: 1.先添加一个自定义消息 ON_NOTIFY ( NM_CUSTOMDRAW,IDC_V_H264_ ...

  9. js实现点击切换checkbox背景图片

    转载自:http://www.bijishequ.com/detail/384166?p= 首页 专题 博客 文章 登录 注册 www.bijishequ.com 搜索 笔记社区共收录522,437篇 ...

最新文章

  1. mysql刷新连接_MYSQL频繁出现连接失败,刷新后正常的解决办法
  2. vs安卓开发发布_向华为的鸿蒙看齐,谷歌发布全新系统,手机电脑通用
  3. HDU - 5514 Frogs(容斥原理)
  4. POJ 1276 完全背包
  5. java的栈堆的理解_理解堆与栈 - 一步一个脚印 - BlogJava
  6. 60秒ICO募资2.35亿,AI+区块链概念,这个风口上的公司有点怪
  7. 一口气通过一系列阿里云证书ACA/ACP/ACE认证心得
  8. html+css+气泡,纯CSS气泡框实现方法探究
  9. 物联网开发 无线433MHz安防报警系统 上
  10. 关于汽车诊断OBD的理解(ISO15031-5)
  11. Recorder教程☀️ Unity官方录屏插件使用介绍
  12. 在App Store和Google Play上推广应用程序
  13. C++版《天空之城》
  14. JAVA:实现十进制转二进制算法(附完整源码)
  15. 【ZJOI2009】狼和羊的故事
  16. 一幅长文细学Vue(一)——Webpack打包工具
  17. 你对C++头文件了解多少?——盘点C++的常用头文件
  18. 004 json介绍
  19. arcgis表转excel一直失败_Excel表转换为shp格式时属性值丢失问题
  20. 十大优质现货投资平台最新排名

热门文章

  1. 使用canal 监听mysql binlog获取增量数据
  2. 达摩院成立XG实验室,阿里官宣进军5G
  3. 无法登录 MySQL 服务器 如何解决?
  4. 《数据库原理》第二章 关系数据库
  5. SequoiaDB版本在线升级介绍说明
  6. 论文阅读——ECA-Net: Efficient Channel Attention for Deep Convolutional Neural Networks
  7. 第一单元计算机基础知识,第一单元 计算机基础知识 第一课资料
  8. 云铺购代刷网系统全开源可运营程序搭建
  9. 用lavaan包进行验证性因子分析
  10. 告诉你,什么是UML?