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 相关文章推荐
js截取小数点后几位的写法
Nov 14 Javascript
javascript编程异常处理实例小结
Nov 30 Javascript
jQuery焦点图左右转换效果
Dec 12 Javascript
JavaScript html5利用FileReader实现上传功能
Mar 27 Javascript
微信小程序网络请求的封装与填坑之路
Apr 01 Javascript
JavaScript实现的搜索及高亮显示功能示例
Aug 14 Javascript
Vue代码分割懒加载的实现方法
Nov 23 Javascript
three.js实现3D影院的原理的代码分析
Dec 18 Javascript
JS面向对象的程序设计相关知识小结
May 26 Javascript
JQuery获取可视区尺寸和文档尺寸及制作悬浮菜单示例
May 14 jQuery
JavaScript函数式编程(Functional Programming)高阶函数(Higher order functions)用法分析
May 22 Javascript
layui中的switch开关实现方法
Sep 03 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
php中获取主机名、协议及IP地址的方法
2014/11/18 PHP
php注册登录系统简化版
2020/12/28 PHP
PHP实现图的邻接矩阵表示及几种简单遍历算法分析
2017/11/24 PHP
ThinkPHP5.1框架数据库链接和增删改查操作示例
2019/08/03 PHP
接收键盘指令的脚本
2006/06/26 Javascript
用JavaScript编写COM组件的步骤
2009/03/17 Javascript
Javascript+XMLHttpRequest+asp.net无刷新读取数据库数据
2009/08/09 Javascript
js中关于new Object时传参的一些细节分析
2011/03/13 Javascript
javascript实现tabs选项卡切换效果(扩展版)
2013/03/19 Javascript
jquery操作cookie插件分享
2014/01/14 Javascript
控制input输入框中提示信息的显示和隐藏的方法
2014/02/12 Javascript
javascript修改IMG标签的src问题
2014/03/28 Javascript
动态加载iframe时get请求传递中文参数乱码解决方法
2014/05/07 Javascript
js实现正方形颜色从下往上升的效果
2014/08/04 Javascript
js实现图片无缝滚动
2015/12/23 Javascript
原生js封装二级城市下拉列表的实现代码
2016/06/16 Javascript
AngularJS学习笔记(三)数据双向绑定的简单实例
2016/11/08 Javascript
前端图片懒加载(lazyload)的实现方法(提高用户体验)
2017/08/21 Javascript
使用webpack4编译并压缩ES6代码的方法示例
2019/04/24 Javascript
nuxt.js 在middleware(中间件)中实现路由鉴权操作
2020/11/06 Javascript
Python之py2exe打包工具详解
2017/06/14 Python
python高效过滤出文件夹下指定文件名结尾的文件实例
2018/10/21 Python
python实现接口并发测试脚本
2019/06/25 Python
使用python实现离散时间傅里叶变换的方法
2019/09/02 Python
倩碧美国官网:Clinique美国
2016/07/20 全球购物
AE美国鹰日本官方网站: American Eagle Outfitters
2016/12/10 全球购物
瑞典灯具和照明网上商店:Lamp24.se
2018/03/17 全球购物
CK澳大利亚官网:Calvin Klein澳大利亚
2020/12/12 全球购物
高中生活自我鉴定
2014/01/18 职场文书
软件毕业生个人鉴定
2014/03/03 职场文书
电子商务助理求职自荐信
2014/04/10 职场文书
爱心捐款倡议书
2014/04/14 职场文书
学校教研活动总结
2014/07/02 职场文书
感恩教育月活动总结
2014/07/07 职场文书
个人违纪检讨书
2014/09/15 职场文书
单位租房协议范本
2014/12/03 职场文书