javascript实现网页背景烟花效果的方法


Posted in Javascript onAugust 06, 2015

本文实例讲述了javascript实现网页背景烟花效果的方法。分享给大家供大家参考。具体如下:

这里的网页背景烟花爆炸特效,不用说是用Js实现的,配合黑色背景效果最好,五颜六色的烟花效果,四散的烟花效果,以前发过一些网页上的烟花特效,本款类似,但代码更简洁。

运行效果如下图所示:

javascript实现网页背景烟花效果的方法

具体代码如下:

<html>
<head>
<title>背景的烟花效果</title>
<style type="text/css">
<!--
body {
background-color: #000000;
}
-->
</style></head>
<body>
<script language="JavaScript">
var col = new Array('#ffffff','#fff000','#ffa000','#ff00ff','#00ff00','#0000ff','#ff0000');
var p='<div id="rearDiv" style="position:absolute;top:0px;left:0px">';
var n=0;
for (i=0;i<14;++i){
 n++;
 if (n=(col.length-1)) n=0;
 p=p+'<div style="position:relative;width:1px;height:1px;background:'+col[n]+';font-size:3px">.</div>';
}
p=p+"</div>";
document.write(p);
var Clrs = new Array('ff0000','00ff00','000aff','ff00ff','ffa500','ffff00','00ff00','ffffff','fffff0');
var sClrs = new Array('ffa500','55ff66','AC9DFC','fff000','fffff0');
var peepY;
var peepX;
var step = 5;
var tallyStep = 0;
var backColor = 'ffa000';
var Mtop = 250;
var Mleft = 250;
function dissilient() {
 peepY = window.document.body.clientHeight/3;
 peepX = window.document.body.clientWidth/8;
 enlarge();
 tallyStep+= step;
 reduce();
 T=setTimeout("dissilient()",20);
}
function enlarge(){
 for ( i = 0 ; i < rearDiv.all.length ; i++ ) {
  var c=Math.round(Math.random()*(Clrs.length-1));
  if (tallyStep < 90)
   rearDiv.all[i].style.background=backColor;
  if (tallyStep > 90)
   rearDiv.all[i].style.background=Clrs[c];
  rearDiv.all[i].style.top = Mtop + peepY*Math.sin((tallyStep+i*5)/3)*Math.sin(550+tallyStep/100);
  rearDiv.all[i].style.left = Mleft + peepY*Math.cos((tallyStep+i*5)/3)*Math.sin(550+tallyStep/100);
 }
}
function reduce(){
 if (tallyStep == 220) {
  tallyStep = -10;
  var k=Math.round(Math.random()*(sClrs.length-1));
  backColor = sClrs[k];
  Dtop = window.document.body.clientHeight - 250;
  Dleft = peepX * 3.5;
  Mtop = Math.round(Math.random()*Dtop);
  Mleft = Math.round(Math.random()*Dleft);
  document.all.rearDiv.style.top = Mtop+document.body.scrollTop;
  document.all.rearDiv.style.left = Mleft+document.body.scrollLeft;
  if ((Mtop < 20) || (Mleft < 20)) {
  Mtop += 90;
  Mleft += 90;
 }
 }
}
dissilient();
</script>
</body>
</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
Raphael带文本标签可拖动的图形实现代码
Feb 20 Javascript
setTimeout()与setInterval()方法区别介绍
Dec 24 Javascript
Javascript 赋值机制详解
Nov 23 Javascript
jQuery中clone()方法用法实例
Jan 16 Javascript
angularjs使用directive实现分页组件的示例
Feb 07 Javascript
React Native基础入门之初步使用Flexbox布局
Jul 02 Javascript
JavaScript设计模式之享元模式实例详解
Jan 17 Javascript
微信小程序云开发如何使用npm安装依赖
May 18 Javascript
微信小程序实现收货地址左滑删除
Nov 18 Javascript
js回溯法计算最佳旅行线路代码实例
Sep 11 Javascript
vue实现element表格里表头信息提示功能(推荐)
Nov 20 Javascript
小程序按钮避免多次调用接口和点击方案实现(不用showLoading)
Apr 15 Javascript
JS实现三级折叠菜单特效,其它级可自动收缩
Aug 06 #Javascript
JavaScript实现定时隐藏与显示图片的方法
Aug 06 #Javascript
JavaScript实现文字跟随鼠标特效
Aug 06 #Javascript
javascript实现3D变换的立体圆圈实例
Aug 06 #Javascript
JavaScript实现自动弹出窗口并自动关闭窗口的方法
Aug 06 #Javascript
JS实现从网页顶部掉下弹出层效果的方法
Aug 06 #Javascript
JS实现可直接显示网页代码运行效果的HTML代码预览功能实例
Aug 06 #Javascript
You might like
php简单的留言板与回复功能具体实现
2014/02/19 PHP
php随机生成数字字母组合的方法
2015/03/18 PHP
PHP register_shutdown_function()函数的使用示例
2015/06/23 PHP
PHP将二维数组某一个字段相同的数组合并起来的方法
2016/02/26 PHP
javascript prototype原型操作笔记
2009/12/07 Javascript
jQuery对象和DOM对象的相互转化实现代码
2010/03/02 Javascript
Javascript 页面模板化很多人没有使用过的方法
2012/06/05 Javascript
JS中获取数据库中的值的方法
2013/07/14 Javascript
JavaScript中的this机制
2016/01/30 Javascript
js表单验证实例讲解
2016/03/31 Javascript
JavaScript的ExtJS框架中表格的编写教程
2016/05/21 Javascript
vue.js初学入门教程(1)
2016/11/03 Javascript
ES6概念 Symbol toString()方法
2016/12/25 Javascript
详解本地Node.js服务器作为api服务器的解决办法
2017/02/28 Javascript
VUE开发一个图片轮播的组件示例代码
2017/03/06 Javascript
前端开发之CSS原理详解
2017/03/11 Javascript
Vue Promise的axios请求封装详解
2018/08/13 Javascript
Vue绑定内联样式问题
2018/10/17 Javascript
了解JavaScript表单操作和表单域
2019/05/27 Javascript
JS实现商城秒杀倒计时功能(动态设置秒杀时间)
2019/12/12 Javascript
vue项目或网页上实现文字转换成语音播放功能
2020/06/09 Javascript
ant design vue导航菜单与路由配置操作
2020/10/28 Javascript
Python 2.7.x 和 3.x 版本的重要区别小结
2014/11/28 Python
Python for循环生成列表的实例
2018/06/15 Python
Python 2/3下处理cjk编码的zip文件的方法
2019/04/26 Python
使用GitHub和Python实现持续部署的方法
2019/05/09 Python
pytorch自定义二值化网络层方式
2020/01/07 Python
Python替换NumPy数组中大于某个值的所有元素实例
2020/06/08 Python
西班牙第一的网上药房:PromoFarma.com
2017/04/17 全球购物
标记环网Toke Ring IEEE802.5
2014/05/26 面试题
公益活动邀请函
2014/02/05 职场文书
幼儿园新年寄语
2014/04/03 职场文书
自强自立美德少年事迹材料
2014/08/16 职场文书
美容院合作经营协议书
2014/10/10 职场文书
2016民族团结先进个人事迹材料
2016/02/26 职场文书
详解前端任务构建利器Gulp.js使用指南
2021/04/30 Javascript