直接上代码
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>下雪效果实现</title> <link rel="stylesheet" type="text/css" href="reset.css"> <style type="text/css"> body,html{ overflow: hidden; } </style> </head> <body> <script type="text/javascript"> var snowflakes = { arr:[],// 数组盛放元素 snowflake : [//雪花类型 '"red", "green", "#ccc123", "#345232", "#231111", "#ab2322" ], random : function (num){ return Math.floor(Math.random()*num);// 获得一个num-1的整数 }, init : function (num){ // 最多个数 this.maxlength = num; // 边界 this.maxWidth = (document.documentElement.clientWidth || document.body.clientWidth) + 20; // 边界 this.maxHeight = (document.documentElement.clientHeight || document.body.clientHeight) + 20; this.create(); this.move(); }, // 创建 create : function (){ var that = this; setInterval(function (){ // 当数组中的数量,比最大数量要小的时候 开始创建 if( that.arr.length < that.maxlength){ var d = document.createElement("div"); // 内容和 颜色是随机的 颜色和文字库里面的 d.innerHTML = that.snowflake[that.random(that.snowflake.length)]; d.style.color = that.snowflakeColor[that.random(that.snowflakeColor.length)]; d.style.position = "absolute"; // 位置是随机的 top(0- -99) left (0 - that.maxWidth*2/3-1) d.style.left = that.random(that.maxWidth*2/3) + "px"; d.style.top = -that.random(100) + "px"; // 速度 d.vx = 2+that.random(10); d.vy = 3+that.random(10); // 数组添加元素, body 添加元素 document.body.appendChild(d); that.arr.push(d) } },20) }, // 运动 move : function (){ var that = this; var arr = that.arr; setInterval(function (){ // 循环数组中的每一个元素 for(var i = 0 ; i < arr.length ; i ++ ){ // 替换位置 arr[i].style.left = arr[i].offsetLeft + arr[i].vx + "px"; arr[i].style.top = arr[i].offsetTop + arr[i].vy + 'px'; // 判断边界 删除元素 if (arr[i].offsetTop >= that.maxHeight || arr[i].offsetLeft >= that.maxWidth) { document.body.removeChild(arr[i]); arr.splice(i,1); } } },30) } } window.onload = function (){ snowflakes.init(100); } </script> </body> </html>
效果图
以上就是JavaScript 实现下雪特效的示例代码的详细内容,更多关于JavaScript 实现下雪特效的资料请关注其它相关文章!
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
暂无“JavaScript 实现下雪特效的示例代码”评论...
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。
更新动态
2024年11月17日
2024年11月17日
- 【雨果唱片】中国管弦乐《鹿回头》WAV
- APM亚流新世代《一起冒险》[FLAC/分轨][106.77MB]
- 崔健《飞狗》律冻文化[WAV+CUE][1.1G]
- 罗志祥《舞状元 (Explicit)》[320K/MP3][66.77MB]
- 尤雅.1997-幽雅精粹2CD【南方】【WAV+CUE】
- 张惠妹.2007-STAR(引进版)【EMI百代】【WAV+CUE】
- 群星.2008-LOVE情歌集VOL.8【正东】【WAV+CUE】
- 罗志祥《舞状元 (Explicit)》[FLAC/分轨][360.76MB]
- Tank《我不伟大,至少我能改变我。》[320K/MP3][160.41MB]
- Tank《我不伟大,至少我能改变我。》[FLAC/分轨][236.89MB]
- CD圣经推荐-夏韶声《谙2》SACD-ISO
- 钟镇涛-《百分百钟镇涛》首批限量版SACD-ISO
- 群星《继续微笑致敬许冠杰》[低速原抓WAV+CUE]
- 潘秀琼.2003-国语难忘金曲珍藏集【皇星全音】【WAV+CUE】
- 林东松.1997-2039玫瑰事件【宝丽金】【WAV+CUE】