在画布中实现气泡

第一步:先定义一个 500*500的画布
<canvas id="wrap" width="500" height="500" ></canvas>

第二步:给画布设置样式

<style>
    *{
        margin: 0;
        padding: 0;
    }
    html,body{

background: #cccccc;
    }
    #wrap{
        background: #fff;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        margin: auto;
    }
</style>

第三步:  js代码

<script type="text/javascript">
    (function () {
        //获取画板
        var canvas = document.querySelector('#wrap');

if(!canvas.getContext){
            return;
        }
        //定义绘制对象
        var ctx = canvas.getContext('2d');

//定义一个数组存放小圆点
        var circleArr=[];

//进行绘制
        //开启定时器
        setInterval(function () {
       //清除小圆点
            ctx.clearRect(0,0,canvas.width,canvas.height);
            for (var i = 0; i < circleArr.length; i++) {
              var circle = circleArr[i];
              circle.r ++;  //半径不断变大
              circle.opacity -=0.01;//透明度不短减小

//点透明度少于0  直接清除
              if(circle.opacity<=0){
                  circleArr.splice(i,1);
              }

ctx.beginPath(); 
              ctx.fillStyle = 'rgba('+circle.red+','+circle.green+','+circle.blue+','+circle.opacity+')';
              ctx.arc(circle.x,circle.y,circle.r,0,Math.PI*2);
              ctx.fill();
            }

},16);

setInterval(function () {
            //开始绘制圆点
            var circle = {};
            //坐标
            circle.x = Math.random() * canvas.width;
            circle.y = Math.random() * canvas.height;

circle.r = 10;  //半径
            circle.red = Math.random() * 255;
            circle.green = Math.random() * 255;
            circle.blue = Math.random() * 255;
            circle.opacity = 1;  //透明度

circleArr.push(circle);
        },50)

})()

</script>

希望对您有用

本人为前端菜鸟,如上面言论有误,希望大家能在下方评论指出,让菜鸟可以飞一飞~~

canvas画布中实现气泡相关推荐

  1. ros中web端通过 按钮加载本地静态 pgm 地图显示在canvas画布中

    ros中web端通过 按钮加载本地静态 pgm 地图显示在canvas画布中 var input = this.$("fielinput");if (typeof (FileRea ...

  2. ros中web端通过 ajax 访问 nginx 加载静态 pgm 地图显示在canvas画布中

    ros中web端通过 ajax 访问 nginx 加载静态 pgm 地图显示在canvas画布中 //mapName:地图名称 | robotfloor:楼层if(mapName.length ==0 ...

  3. php画布怎么清除,JavaScript_JavaScript html5 canvas画布中删除一个块区域的方法,本文实例讲述了html5 canvas画布 - phpStudy...

    JavaScript html5 canvas画布中删除一个块区域的方法 本文实例讲述了html5 canvas画布中删除一个块区域的方法.分享给大家供大家参考,具体如下: 运行效果截图如下: 附:图 ...

  4. 【Java AWT 图形界面编程】使用鼠标滚轮缩放 Canvas 画布中绘制的背景图像 ( 绘制超大图像 + 鼠标拖动 + 鼠标滚轮缩放 + 以当前鼠标指针位置为缩放中心 示例 )

    文章目录 一.鼠标滚轮缩放的中心点设置为当前鼠标中心点 - 要点分析 1.保存当前鼠标指针指向的位置 2.根据鼠标指针指向的位置以及比例重新计算图片位置 二.绘制超大图像 + 鼠标拖动 + 鼠标滚轮缩 ...

  5. 如何抓取canvas画布中的图片

    如何抓取canvas画布中的图片 网络页面中存放图片的形式有很多 这里说一下canvas格式时怎么获取 String fullImgJs = "return document.getElem ...

  6. 原生js实现canvas画布中绘制、移动、拖拽、删除矩形(如简易截图工具)

    功能描述 待图片上传并加载完成后,重新生成画布: 鼠标在画布区域内绘制,移动,拖拽,删除矩形(如截图工具一般): isboundary() 判断是否需要判断边界问题,默认false. 效果截图 实现代 ...

  7. Canvas 画布中坐标系的位置问题(原点确定)

    Canvas在后台数据可视化中十分重要,很多时候数据都会有Canvas化成一系列类似于折线图和饼状图的形式呈现.最近在学习Canvas过程中,学到建立坐标系过程中.在确定了步骤之后,发现原点确立有个小 ...

  8. 前端:JS/38/canvas状态的保存和恢复(canvas常用状态大全),canvas画布中图像的变形

    canvas状态的保存和恢复 Saving and restoring state 在了解变形之前,我先介绍两个在你开始绘制复杂图形时必不可少的方法. canvas.save() 保存画布(canva ...

  9. js将文字填充与canvas画布再转为图片

    需求:封装consul服务的webUI: 原因:展示consul的服务信息时,需要嵌套动画,由于其没有内置的icon,所以将服务name放于图片位: 分析:展示信息时采用了卡片式的服务布局,缩放式的服 ...

最新文章

  1. 2021年大数据Spark(十七):Spark Core的RDD持久化
  2. Spring - 同一个类中的方法互相调用,注解失效问题的分析和解决(转)
  3. 肝!Python 网络编程
  4. Java的setmargin,Java Sheet.setMargin方法代碼示例
  5. windows下安装zabbix_agent
  6. golang strconv包(类型转换、保留小数位)
  7. where 子句用于指定类型约束
  8. 路由器snmp配置_S7503E V7 snmpv3典型组网配置案例(与IMC联动)
  9. win10睡眠按啥键唤醒_防止Windows10自动唤醒,就用这4招,维修电脑必知
  10. iphone7字体风格怎么改_苹果7怎么更改字体样式 苹果手机换好看的字体
  11. 2019竞赛公开题库c语言,干货!全国电子设计大赛你必知的C语言知识
  12. 「面试」缓存知识点大总结
  13. 网格环境配置 三 安装SGE
  14. php的thumb生成缩略图,php 生成缩略图
  15. Build file: no target in no project
  16. 分享一个python 处理mysql的简易封装模块---directsql
  17. 淘宝知网查重准不准?
  18. mysql存储爬虫图片_爬取微博图片数据存到Mysql中遇到的各种坑\爬取微博图片\Mysql存储图片\微博爬虫...
  19. Android看天气预报,Android开源天气预报app - 清新小天气
  20. 国家信息安全水平考试(NISP一级)考试题库①

热门文章

  1. 大白话搞懂什么是同步/异步/阻塞/非阻塞
  2. 27个最佳Beaver Builder主题和模板(2020)
  3. cleardevice
  4. 开机找不到硬盘的原因
  5. 用Windows电脑看epub小说,哪些阅读器软件更好用?
  6. 华为nova7se能云闪付吗_华为nova7se活力版和华为nova7区别
  7. 【camera】手机相机系统
  8. 学习操作系统,都有哪些硬核网站?
  9. web前端人员每天必须关注的前端社区网站
  10. 发一款增强音效和放大声音的软件