javascript实现很浪漫的气泡冒出特效


Posted in Javascript onSeptember 05, 2020

本文实例讲述了javascript实现很浪漫的气泡冒出特效代码,分享给大家供大家参考,具体如下:

运行效果截图如下:

javascript实现很浪漫的气泡冒出特效

具体代码如下:

实现思路:HTML里只需要一个CANVAS元素,Javascript里操作canvas

1、给canvas里绘制背景图片
2、在绘制半径为0-10px的圆形,x坐标屏幕水平随机,y所标竖直大于屏幕高度。

圆形背景色可以是随机,那就是各种色彩了!
    利用计时器控制y--

构建html

<!doctype html>
<html lang="en">
 <head>
 <meta charset="UTF-8">
 <meta name="Generator" content="EditPlus®">
 <meta name="Author" content="">
 <meta name="Keywords" content="">
 <meta name="Description" content="">
 <title>5多个小球往上运动</title>
 <style>
 </style>
 </head>
 <body>
 <div id="d1">
 <canvas id="canvas"></canvas>
 </div>
 </body>
</html>

js代码

<script>
 var canvas=document.getElementById("canvas");
 var context=canvas.getContext("2d");
 canvas.width=window.innerWidth;
 canvas.height=window.innerHeight;
 function Circle(){
 this.x=Math.random()*canvas.width;
 this.y=canvas.height;
 this.r=Math.random()*10;
 //绘制圆形
 this.paint=function(){
  context.beginPath();
  context.arc(this.x,this.y,this.r,0,Math.PI*2);
  context.fillStyle="white";
  context.globalAlpha = 0.5;
  context.fill();
 }
 //控制圆形移动
 this.step=function(){
  this.y--;
 }
 }
 var circles=[];
 function createCircles(){
 var circle=new Circle();//??????
 circles[circles.length]=circle;
 }
 
 function paintCircles(){
 for(var i=0;i<circles.length;i++){
  circles[i].paint();
 }
 }
 function stepCircles(){
 for(var i=0;i<circles.length;i++){
  circles[i].step();
 }
 }
 var myimg=new Image();
 myimg.src="images/demo-1.png";
 var timer="";
 setInterval(function(){
 context.drawImage(myimg,0,0);
 timer++;
 if(timer%20==0){
  createCircles();
 }
 paintCircles();
 stepCircles();
 },10);
</script>

需要在自己的网站中添加浪漫元素,这不失为一种好的方式,希望大家灵活运用javascript实现气泡冒出特效,谢谢大家的阅读。

Javascript 相关文章推荐
javascript 常用方法总结
Jun 03 Javascript
JS实现div居中示例
Apr 17 Javascript
javascript校验价格合法性实例(必须输入2位小数)
May 05 Javascript
简单实现限制uploadify上传个数
Nov 16 Javascript
jQuery实现的可编辑表格完整实例
Jun 20 Javascript
JavaScript制作简易计算器(不用eval)
Feb 05 Javascript
使用vue.js实现checkbox的全选和多个的删除功能
Feb 17 Javascript
利用Mongoose让JSON数据直接插入或更新到MongoDB
May 03 Javascript
在HTML文档中嵌入JavaScript的四种方法
May 07 Javascript
Vue组件中的data必须是一个function的原因浅析
Sep 03 Javascript
小谈angular ng deploy的实现
Apr 07 Javascript
如何在vue-cli中使用css-loader实现css module
Jan 07 Vue.js
jQuery插件jquery-barcode实现条码打印的方法
Nov 25 #Javascript
JavaScript编写简单的计算器
Nov 25 #Javascript
HTML5 Shiv完美解决IE(IE6/IE7/IE8)不兼容HTML5标签的方法
Nov 25 #Javascript
jQuery插件formValidator自定义函数扩展功能实例详解
Nov 25 #Javascript
jQuery实现鼠标双击Table单元格变成文本框及输入内容后更新到数据库的方法
Nov 25 #Javascript
基于jQuery实现响应式圆形图片轮播特效
Nov 25 #Javascript
jquery+css实现动感的图片切换效果
Nov 25 #Javascript
You might like
十天学会php之第一天
2006/10/09 PHP
不用数据库的多用户文件自由上传投票系统(2)
2006/10/09 PHP
php冒泡排序、快速排序、快速查找、二维数组去重实例分享
2014/04/24 PHP
Smarty简单生成表单元素的方法示例
2016/05/23 PHP
讲两件事:1.this指针的用法小探. 2.ie的attachEvent和firefox的addEventListener在事件处理上的区别
2007/04/12 Javascript
用js来刷新当前页面保留参数的具体实现
2013/12/23 Javascript
javascript中的原型链深入理解
2014/02/24 Javascript
jQuery实现瀑布流布局
2014/12/12 Javascript
Javascript编写俄罗斯方块思路及实例
2015/07/07 Javascript
jQuery带进度条全屏图片轮播特效代码分享
2020/06/28 Javascript
jQuery实现仿QQ头像闪烁效果的文字闪动提示代码
2015/11/03 Javascript
javascript css红色经典选项卡效果实现代码
2016/05/17 Javascript
JavaScript表单验证实现代码
2017/05/22 Javascript
详解vue-cli 脚手架项目-package.json
2017/07/04 Javascript
VUE axios发送跨域请求需要注意的问题
2017/07/06 Javascript
vue.js轮播图组件使用方法详解
2018/07/03 Javascript
Vue异步组件处理路由组件加载状态的解决方案
2018/09/07 Javascript
Python检测QQ在线状态的方法
2015/05/09 Python
使用httplib模块来制作Python下HTTP客户端的方法
2015/06/19 Python
python编程实现归并排序
2017/04/14 Python
Flask web开发处理POST请求实现(登录案例)
2018/07/26 Python
python 比较2张图片的相似度的方法示例
2019/12/18 Python
Tensorflow tf.nn.depthwise_conv2d如何实现深度卷积的
2020/04/20 Python
python性能测试工具locust的使用
2020/12/28 Python
英国、欧洲和全球租车服务:Avis英国
2016/08/29 全球购物
电子商务专业自我鉴定
2013/12/18 职场文书
酒店销售主管岗位职责
2014/01/04 职场文书
体育教师求职信
2014/06/30 职场文书
售房委托书
2014/08/30 职场文书
咖啡店创业计划书范文
2014/09/15 职场文书
2014年小学工作总结
2014/11/26 职场文书
会计试用期自我评价
2015/03/10 职场文书
初级职称评定工作总结
2015/08/13 职场文书
redis配置文件中常用配置详解
2021/04/14 Redis
CSS3实现的侧滑菜单
2021/04/27 HTML / CSS
Springboot如何使用logback实现多环境配置?
2021/06/16 Java/Android