javascript实现雪花飘落效果


Posted in Javascript onAugust 19, 2020

圣诞节快到了相信许多公司的前端都在会收到一个需求,那就是做一个关于圣诞节的专题,而这个专题为了应对圣诞节这个主题都会加上雪花飘呀飘这个小动画,当然我们公司也不例外,下面就是本人用js写的一小段雪花秀啦:

<!DOCTYPE html>
<html>
 <head>
 <meta charset="UTF-8">
 <title></title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" name="viewport">
  <script src="jquery-1.8.3.min.js"></script>
 </head>
 <style>
 html{
  max-width: 720px;
  
 }
 body{
  width: 100%;
  height: 100%;
  margin: 0 auto;
  overflow-x: hidden;
 }
 .snow{
  width: 100%;
  height: 100%;
  background: pink;
  overflow: hidden;
 }
 .snow_img{
  position: absolute;
  top: -50px;
  margin-left: 1px;
 }
 </style>
 <body>
 <div class="snow"></div>
 <script>
 $(function(){
  $('body').css("height",$(window).height())
  var wid=$(".snow").width();
  var html_snow="<img src='snow.png' class='snow_img'>";
  setInterval(function(){$(".snow").append(html_snow);snowFlow();},100);
  function snowFlow(){
  $(".snow_img").each(function(index){
   var snow_time=(Math.random()*10+4)*1000;
   var wid_snow=Math.floor(Math.random()*40+5)+'px';
         var float_left=Math.random()*wid*2-wid+"px";
   var wid_left=Math.random()*wid+"px";
    if( $(this).css("margin-left")==1+"px"){
   $(this).css("margin-left",wid_left);
   }
   if($(this).width()==0 || $(this).width()==50 ){
   $(this).width(wid_snow);
   }
   $(this).animate({top:800+"px",left:float_left,},snow_time);
   if($(this).offset().top==800){
         $(this).remove();
   }
  })
  }
 });
 
 </script>
 </body>
</html>

代码很简单,都是运动用js的一些基础知识点做出来的,主要是随机数和一些判断。就这么简单。代码不是重点,重点是思维,有了思维你自然就可以做出来了。下面是效果图:

javascript实现雪花飘落效果

想看动态效果的自己复制代码运行就可以了。欢迎给优化建议。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery 性能优化指南 (1)
May 21 Javascript
Javascript中浮点数相乘的一个解决方法
Jun 03 Javascript
JavaScript设计模式之策略模式实例
Oct 10 Javascript
JavaScript 学习笔记之基础中的基础
Jan 13 Javascript
JS 对象属性相关(检查属性、枚举属性等)
Apr 05 Javascript
js实现的奥运倒计时时钟效果代码
Dec 09 Javascript
超漂亮的Bootstrap 富文本编辑器summernote
Apr 05 Javascript
微信小程序 动态绑定事件并实现事件修改样式
Apr 13 Javascript
js中console在一行内打印字符串和对象的方法
Sep 10 Javascript
JS call()及apply()方法使用实例汇总
Jul 11 Javascript
jQuery实现日历效果
Sep 11 jQuery
浅谈js数组splice删除某个元素爬坑
Oct 14 Javascript
js实现直播点击飘心效果
Aug 19 #Javascript
js实现鼠标点击飘爱心效果
Aug 19 #Javascript
Vue环境搭建+VSCode+Win10的详细教程
Aug 19 #Javascript
Vue实现导航栏菜单
Aug 19 #Javascript
vue实现tab栏点击高亮效果
Aug 19 #Javascript
封装Vue Element的table表格组件的示例详解
Aug 19 #Javascript
JS实现页面鼠标点击出现图片特效
Aug 19 #Javascript
You might like
深入Memcache的Session数据的多服务器共享详解
2013/06/13 PHP
解析thinkphp中的M()与D()方法的区别
2013/06/22 PHP
codeigniter上传图片不能正确识别图片类型问题解决方法
2014/07/25 PHP
超棒的javascript页面顶部卷动广告效果
2007/12/01 Javascript
JavaScript判断文件上传类型的方法
2014/09/02 Javascript
总结JavaScript中布尔操作符||与&amp;&amp;的使用技巧
2015/11/17 Javascript
javascript每日必学之运算符
2016/02/16 Javascript
JavaScript设计模式开发中组合模式的使用教程
2016/05/18 Javascript
修改ligerui 默认确认按钮的方法
2016/12/27 Javascript
vue.js绑定事件监听器示例【基于v-on事件绑定】
2018/07/07 Javascript
打通前后端构建一个Vue+Express的开发环境
2018/07/17 Javascript
NodeJS实现同步的方法
2019/03/02 NodeJs
微信小游戏之使用three.js 绘制一个旋转的三角形
2019/06/10 Javascript
three.js显示中文字体与tween应用详析
2021/01/04 Javascript
python使用urllib模块开发的多线程豆瓣小站mp3下载器
2014/01/16 Python
Python的subprocess模块总结
2014/11/07 Python
Python with用法实例
2015/04/14 Python
python中正则的使用指南
2016/12/04 Python
python字符串过滤性能比较5种方法
2017/06/22 Python
python实现守护进程、守护线程、守护非守护并行
2018/05/05 Python
对python中类的继承与方法重写介绍
2019/01/20 Python
Django 后台获取文件列表 InMemoryUploadedFile的例子
2019/08/07 Python
Python包和模块的分发详细介绍
2020/06/19 Python
Python面向对象特殊属性及方法解析
2020/09/16 Python
python 实现单例模式的5种方法
2020/09/23 Python
俄罗斯和世界各地的酒店预订:Hotels.com俄罗斯
2016/08/19 全球购物
Sunglasses Shop英国:欧洲领先的太阳镜在线供应商之一
2018/09/19 全球购物
《恐龙》教学反思
2014/04/27 职场文书
合唱兴趣小组活动总结
2014/07/10 职场文书
委托公证书样本
2015/01/23 职场文书
员工自我工作评价
2015/03/06 职场文书
2015年幼儿园保育工作总结
2015/05/12 职场文书
民事撤诉申请书范本
2015/05/18 职场文书
城南旧事观后感
2015/06/11 职场文书
幼儿园卫生保健制度
2015/08/05 职场文书
详解Python+OpenCV进行基础的图像操作
2022/02/15 Python