JavaScript生成的动态下雨背景效果实现方法


Posted in Javascript onFebruary 25, 2015

本文实例讲述了JavaScript生成的动态下雨背景效果实现方法。分享给大家供大家参考。具体实现方法如下:

<HTML>

<HEAD>

<TITLE>JavaScript生成的动态下雨背景效果</TITLE>

</HEAD>

<BODY bgcolor="#fef4d2" >

<center>

<script language=JavaScript>

<!-- [Step1]: 在此能够设置雨滴的多少 -->

var rainsize = 40;

<!-- [Step2]: 这里可以更改下雨的速度,数值大速度慢 -->

var speed = 10;

var x = new Array();

var y = new Array();

var r = new Array();

var cx = new Array();

var cy = new Array();

var doc_width = document.body.clientWidth;

var doc_height = document.body.clientHeight;
for(i=0; i<rainsize; ++i) { 

  initRain();

  if (i == 0) {

    document.write("<div id=\"dot"+ i +"\" style=\"POSITION: ");

    document.write("absolute; Z-INDEX: "+ i +"; VISIBILITY: ");

    document.write("visible; TOP: 15px; LEFT: 15px;\"><font color=\"blue\">");

    document.write(",</font></div>"); }

  else {

    document.write("<div id=\"dot"+ i +"\" style=\"POSITION: ");

    document.write("absolute; Z-INDEX: "+ i +"; VISIBILITY: ");

    document.write("visible; TOP: 15px; LEFT: 15px;\"><font color=\"blue\">");

    document.write(",.</font></div>");  }

}
function initRain() {

  a = 6;

  r[i] = 1;

  sn = Math.sin(a);

  cs = Math.cos(a);

  cx[i] = Math.random() * doc_width + 1;

  cy[i] = Math.random() * doc_height + 1;

  x[i] = r[i] * sn + cx[i];

  y[i] = cy[i];

}
function raindropIE() {

  for (i = 0; i < rainsize; ++ i) {

     updateRain();

     if ((x[i] <= 1) || (x[i] >= (doc_width - 20)) || (y[i] >= (doc_height - 20))) {

         makeRain();

         doc_width = document.body.clientWidth;

         doc_height = document.body.clientHeight; }

     document.all["dot"+i].style.pixelTop = y[i];

     document.all["dot"+i].style.pixelLeft = x[i]; }

  setTimeout("raindropIE()", speed); 

}

function updateRain() {

  r[i] += 10;

  x[i] = r[i] * sn + cx[i];

  y[i] = r[i] * cs + cy[i];

}

function makeRain() {

  r[i] = 1;

  cx[i] = Math.random() * doc_width + 1;

  cy[i] = 1;

  x[i] = r[i] * sn + cx[i];

  y[i] = r[i] * cs + cy[i];

}

raindropIE();

</script> 

</BODY>

</HTML>

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

Javascript 相关文章推荐
JavaScript 动态将数字金额转化为中文大写金额
May 14 Javascript
一个很简单的jquery+xml+ajax的无刷新树结构(无css,后台是c#)
Jun 02 Javascript
jQuery(1.6.3) 中css方法对浮动的实现缺陷分析
Sep 09 Javascript
javascript确认框的三种使用方法
Dec 17 Javascript
jquery幻灯片插件bxslider样式改进实例
Oct 15 Javascript
7个让JavaScript变得更好的注意事项
Jan 28 Javascript
浅谈js中的闭包
Mar 16 Javascript
jsp 网站引入外部css或者js失效问题解决
Oct 31 Javascript
js放到head中失效的原因与解决方法
Mar 07 Javascript
彻底弄懂 JavaScript 执行机制
Oct 23 Javascript
vue+element-ui实现表格编辑的三种实现方式
Oct 31 Javascript
vue+element实现图片上传及裁剪功能
Jun 29 Javascript
JS实现进入页面时渐变背景色的方法
Feb 25 #Javascript
JS实现让网页背景图片斜向移动的方法
Feb 25 #Javascript
Javascript中获取对象的原型对象的方法小结
Feb 25 #Javascript
JavaScript中判断变量是数组、函数或是对象类型的方法
Feb 25 #Javascript
Js可拖拽放大的层拖动特效实现方法
Feb 25 #Javascript
JS实现自适应高度表单文本框的方法
Feb 25 #Javascript
如何编写高质量JS代码(续)
Feb 25 #Javascript
You might like
php操作sqlserver关于时间日期读取的小小见解
2009/11/29 PHP
PHP登录(ajax提交数据和后台校验)实例分享
2016/12/29 PHP
PHP一致性hash分布式算法封装类定义与用法示例
2018/08/04 PHP
ExtJs 表单提交登陆实现代码
2010/08/19 Javascript
js一般方法改写成面向对象方法的无限级折叠菜单示例代码
2013/07/04 Javascript
页面右下角弹出提示框示例代码js版
2013/08/02 Javascript
用box固定长宽实现图片自动轮播js代码
2014/06/09 Javascript
WEB前端设计师常用工具集锦
2014/12/09 Javascript
使用jQuery实现WordPress中的Ctrl+Enter和@评论回复
2016/05/21 Javascript
bootstrap weebox 支持ajax的模态弹出框
2017/02/23 Javascript
Bootstrap布局之栅格系统学习笔记
2017/05/04 Javascript
vue.js 上传图片实例代码
2017/06/22 Javascript
JS实现简单表格排序操作示例
2017/10/07 Javascript
AngularJS实现表单元素值绑定操作示例
2017/10/11 Javascript
webpack实用小功能介绍
2018/01/02 Javascript
微信小程序 确认框的实现(附代码)
2019/07/23 Javascript
python类型强制转换long to int的代码
2013/02/10 Python
python实现根据窗口标题调用窗口的方法
2015/03/13 Python
Python中使用pprint函数进行格式化输出的教程
2015/04/07 Python
python3+requests接口自动化session操作方法
2018/10/13 Python
python创建属于自己的单词词库 便于背单词
2019/07/30 Python
Laravel框架表单验证格式化输出的方法
2019/09/25 Python
Python object类中的特殊方法代码讲解
2020/03/06 Python
Python实现简单猜数字游戏
2021/02/03 Python
CSS3 实现雷达扫描图的示例代码
2020/09/21 HTML / CSS
苏宁红孩子母婴商城:redbaby
2017/02/12 全球购物
英国安全产品购物网站:The Safe Shop
2017/03/20 全球购物
什么是虚拟内存?虚拟内存有什么优势?
2012/02/19 面试题
厂区绿化方案
2014/05/08 职场文书
财务工作失职检讨书
2014/11/21 职场文书
2014年高数考试作弊检讨书
2014/12/14 职场文书
公司员工手册范本
2015/05/14 职场文书
海洋天堂观后感
2015/06/05 职场文书
2015年教务处干事工作总结
2015/07/22 职场文书
一篇带你入门Java垃圾回收器
2021/06/16 Java/Android
青岛市的收音机研制与生产
2022/04/07 无线电