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 相关文章推荐
window.location和document.location的区别分析
Dec 23 Javascript
javascript 操作cookies及正确使用cookies的属性
Oct 15 Javascript
在html页面上拖放移动标签
Jan 08 Javascript
javascript对数组的常用操作代码 数组方法总汇
Jan 27 Javascript
js前台分页显示后端JAVA数据响应
Mar 18 Javascript
JavaScript设计模式之观察者模式(发布者-订阅者模式)
Sep 24 Javascript
js监听鼠标点击和键盘点击事件并自动跳转页面
Sep 24 Javascript
Javascript编写2048小游戏
Jul 07 Javascript
使用Function.apply()的参数数组化来提高 JavaScript程序性能的技巧
Dec 23 Javascript
原生js实现仿window10系统日历效果的实例
Oct 31 Javascript
vue模块移动组件的实现示例
May 20 Javascript
vue vant中picker组件的使用
Nov 03 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学习笔记 类的声明与对象实例化
2011/06/13 PHP
PHP中array_merge和array相加的区别分析
2013/06/17 PHP
配置php网页显示各种语法错误
2013/09/23 PHP
WordPress中编写自定义存储字段的相关PHP函数解析
2015/12/25 PHP
php微信公众号开发之简答题
2018/10/20 PHP
jquery实现点击TreeView文本父节点展开/折叠子节点
2013/01/10 Javascript
jQuery 事件的命名空间简单了解
2013/11/22 Javascript
Jquery实现自定义窗口随意的拖拽
2014/03/12 Javascript
Node.js中require的工作原理浅析
2014/06/24 Javascript
jQuery中:gt选择器用法实例
2014/12/29 Javascript
jquery实现点击弹出可放大居中及关闭的对话框(附demo源码下载)
2016/05/10 Javascript
JavaScript中windows.open()、windows.close()方法详解
2016/07/28 Javascript
微信和qq时间格式模板实例详解
2016/10/21 Javascript
微信小程序scroll-view实现横向滚动和上拉加载示例
2017/03/06 Javascript
node.js环境搭建图文详解
2018/09/19 Javascript
layer ui插件显示tips时,修改字体颜色的实现方法
2019/09/11 Javascript
python 查找文件夹下所有文件 实现代码
2009/07/01 Python
Python判断两个对象相等的原理
2017/12/12 Python
解决django后台样式丢失,css资源加载失败的问题
2019/06/11 Python
python tkinter控件布局项目实例
2019/11/04 Python
Tensorflow 实现释放内存
2020/02/03 Python
关于windows下Tensorflow和pytorch安装教程
2020/02/04 Python
python爬虫泛滥的解决方法详解
2020/11/25 Python
稀有和绝版书籍:Biblio.com
2017/02/02 全球购物
Clarins娇韵诗英国官网:来自法国的天然护肤品牌
2017/04/18 全球购物
PHP如何设置和取得Cookie值
2015/06/30 面试题
国际经济贸易专业推荐信
2013/11/06 职场文书
中文专业毕业生自荐书范文
2014/01/04 职场文书
代办委托书怎样写
2014/04/08 职场文书
四风问题查摆材料
2014/08/25 职场文书
2014年英语教师工作总结
2014/12/03 职场文书
月考总结与反思
2015/10/22 职场文书
商务信函英语问候语
2015/11/10 职场文书
2016年教师政治思想表现评语
2015/12/02 职场文书
bootstrapv4轮播图去除两侧阴影及线框的方法
2022/02/15 HTML / CSS
Android移动应用开发指南之六种布局详解
2022/09/23 Java/Android