JS实现星星海特效


Posted in Javascript onDecember 24, 2019

本文实例为大家分享了JS实现星星海特效的具体代码,供大家参考,具体内容如下

知识点

1.CSS使用@keyframes自定义动画,使用animation调用自定义动画

2.opacity 透明度。从 0.0 (完全透明)到 1.0(完全不透明)

3.CSS中transform

4.animation-delay 属性定义动画何时开始。

5.求屏幕尺寸

var 宽 = document.documentElement.clientWidth;
var 高 = document.documentElement.clientHeight;

6.JS创建节点

7.JS在某元素后追加节点

appendChild()

8.UnderScore.js通过_调用其中的API

运行效果

JS实现星星海特效

代码

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Title</title>
 <script src="UnderScore.js"></script>
 <style>
  *{margin: 0;padding-top: 0}
  body{background-color: #000}
  span{
   width: 30px;
   height: 30px;
   background: url("star.png") no-repeat;
   position: absolute;
   background-size: contain;
   animation: flash 1s alternate infinite;
  }
  @keyframes flash{
   0%{opacity: 0}
   25%{opacity: 0.25}
   50%{opacity: 0.5}
   75%{opacity: 0.75}
   100%{opacity: 1}
  }
  span:hover{
   transform: scale(3, 3) rotate(180deg) !important;
   transition: all 1s;
  }
 </style>
</head>
<body>
<script>
 window.onload = function (ev) {
  // 1. 求出屏幕尺寸
  var screenWidth = document.documentElement.clientWidth;
  var screenHeight = document.documentElement.clientHeight;

  // 2. 动态创建10颗星星
  for (var i = 0; i < 200; i++) {
   // 2.1 创建星星
   var span = document.createElement('span');
   document.body.appendChild(span);

   // 2.2 随即坐标
   var x = parseInt(_.random(0, screenWidth));
   var y = parseInt(_.random(0, screenHeight));
   span.style.left = x +'px';
   span.style.top = y + 'px';

   // 2.3 随机缩放
   var scale = _.random(0, 1.5);
   span.style.transform = 'scale('+scale+','+scale+')';

   // 2.4 频率
   var rate = _.random(0, 1.5);
   span.style.animationDelay = rate + 's';
  }
 }
</script>
</body>
</html>

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

Javascript 相关文章推荐
Jquery中获取iframe的代码
Jan 11 Javascript
javascript开发技术大全 第4章 直接量与字符集
Jul 03 Javascript
javascript检测浏览器flash版本的实现代码
Dec 06 Javascript
高性能Javascript笔记 数据的存储与访问性能优化
Aug 02 Javascript
解析dom中的children对象数组元素firstChild,lastChild的使用
Jul 10 Javascript
利用进制转换压缩数字函数分享
Jan 02 Javascript
javascript类型系统——日期Date对象全面了解
Jul 13 Javascript
深入理解js generator数据类型
Aug 16 Javascript
JS排序之冒泡排序详解
Apr 08 Javascript
微信小程序的生命周期的详解
Oct 19 Javascript
vue 虚拟dom的patch源码分析
Mar 01 Javascript
JavaScript使用表单元素验证表单的示例代码
Aug 20 Javascript
JS实现图片切换特效
Dec 23 #Javascript
JS实现简易留言板特效
Dec 23 #Javascript
JS实现关闭小广告特效
Jan 29 #Javascript
vue element-ui实现动态面包屑导航
Dec 23 #Javascript
vue实现图片上传预览功能
Dec 23 #Javascript
vue项目实现图片上传功能
Dec 23 #Javascript
Vue移动端实现图片上传及超过1M压缩上传
Dec 23 #Javascript
You might like
php实现上传图片文件代码
2015/07/19 PHP
PHP Static延迟静态绑定用法分析
2016/03/16 PHP
Mozilla中显示textarea中选择的文字
2006/09/07 Javascript
jquery插件制作 手风琴Panel效果实现
2012/08/17 Javascript
JS正则中的RegExp对象对象
2012/11/07 Javascript
JQuery实现点击div以外的位置隐藏该div窗口
2013/09/13 Javascript
JavaScript中对象属性的添加和删除示例
2014/05/12 Javascript
BAT及各大互联网公司2014前端笔试面试题--JavaScript篇
2014/10/29 Javascript
jQuery中index()方法用法实例
2014/12/27 Javascript
jQuery中:file选择器用法实例
2015/01/04 Javascript
js实现同一页面可多次调用的图片幻灯切换效果
2015/02/28 Javascript
函数window.open实现关闭所有的子窗口
2015/08/03 Javascript
jQuery实现页面顶部显示的进度条效果完整实例
2015/12/09 Javascript
极力推荐10个短小实用的JavaScript代码段
2016/08/03 Javascript
js获取form表单所有数据的简单方法
2016/08/18 Javascript
jQuery实现带延时功能的水平多级菜单效果【附demo源码下载】
2016/09/21 Javascript
jQuery中select与datalist制作下拉菜单时的区别浅析
2016/12/30 Javascript
js 实现获取name 相同的页面元素并循环遍历的方法
2017/02/14 Javascript
JavaScript学习笔记之惰性函数示例详解
2017/08/27 Javascript
react-native-fs实现文件下载、文本存储的示例代码
2017/09/22 Javascript
微信小程序 页面滑动事件的实例详解
2017/10/12 Javascript
vue-cli3.0 特性解读
2018/04/22 Javascript
webpack 3.X学习之多页面打包的方法
2018/09/04 Javascript
python 中如何获取列表的索引
2019/07/02 Python
浅析python函数式编程
2020/09/26 Python
Python collections模块的使用方法
2020/10/09 Python
SQL Server提供的3种恢复模型都是什么? 有什么区别?
2012/05/13 面试题
解释一下ruby中的特殊方法与特殊类
2013/02/26 面试题
2015元旦节寄语
2014/12/08 职场文书
简单的辞职信范文(2016最新版)
2015/05/12 职场文书
瞿秋白纪念馆观后感
2015/06/10 职场文书
八年级数学教学反思
2016/02/17 职场文书
Python pygame实现中国象棋单机版源码
2021/06/20 Python
Python面向对象之成员相关知识总结
2021/06/24 Python
详解Alibaba Java诊断工具Arthas查看Dubbo动态代理类
2022/04/08 Java/Android
如何Python使用re模块实现okenizer
2022/04/30 Python