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 相关文章推荐
使用原生javascript创建通用表单验证——更锋利的使用dom对象
Sep 13 Javascript
解决遍历时Array.indexOf产生的性能问题
Jul 03 Javascript
alert中断settimeout计时功能
Jul 26 Javascript
基于Bootstrap实现的下拉菜单手机端不能选择菜单项的原因附解决办法
Jul 22 Javascript
Node.js中文件操作模块File System的详细介绍
Jan 05 Javascript
扩展bootstrap的modal模态框-动态添加modal框-弹出多个modal框
Feb 21 Javascript
基于JavaScript实现飘落星星特效
Aug 10 Javascript
关于Webpack dev server热加载失败的解决方法
Feb 22 Javascript
Vue项目History模式404问题解决方法
Oct 31 Javascript
基于Proxy的小程序状态管理实现
Jun 14 Javascript
JavaScript onclick事件使用方法详解
May 15 Javascript
vue中使用mockjs配置和使用方式
Apr 06 Vue.js
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/04/07 PHP
PHP 验证身份证是否合法的函数
2017/02/09 PHP
仿迅雷焦点广告效果(JQuery版)
2008/11/19 Javascript
Javascript 类与静态类的实现(续)
2010/04/02 Javascript
JQuery $.each遍历JavaScript数组对象实例
2014/09/01 Javascript
Javascript核心读书有感之表达式和运算符
2015/02/11 Javascript
js HTML5手机刮刮乐代码
2020/09/29 Javascript
vue.js vue-router如何实现无效路由(404)的友好提示
2017/12/20 Javascript
vue实现底部菜单功能
2018/07/24 Javascript
微信小程序新手教程之启动页的重要性
2019/03/03 Javascript
详释JavaScript执行环境与执行栈
2019/04/02 Javascript
Vue使用zTree插件封装树组件操作示例
2019/04/25 Javascript
js实现随机点名器精简版
2020/06/29 Javascript
解决vue项目运行npm run serve报错的问题
2020/10/26 Javascript
python编写的最短路径算法
2015/03/25 Python
学习python之编写简单乘法口诀表实现代码
2016/02/27 Python
python3+PyQt5 使用三种不同的简便项窗口部件显示数据的方法
2019/06/17 Python
Python使用random模块生成随机数操作实例详解
2019/09/17 Python
pygame实现烟雨蒙蒙下彩虹雨
2019/11/11 Python
python global和nonlocal用法解析
2020/02/03 Python
python中安装django模块的方法
2020/03/12 Python
Python如何脚本过滤文件中的注释
2020/05/27 Python
html5指南-7.geolocation结合google maps开发一个小的应用
2013/01/07 HTML / CSS
园林设计师自荐信
2013/11/18 职场文书
上课迟到检讨书100字
2014/01/11 职场文书
生物学学生自我评价
2014/01/17 职场文书
中学运动会广播稿
2014/01/19 职场文书
优秀员工推荐信
2014/05/10 职场文书
小区推广策划方案
2014/06/06 职场文书
羽毛球比赛策划方案
2014/06/13 职场文书
违反交通法规检讨书
2014/09/10 职场文书
公务员年度考核评语
2014/12/31 职场文书
鲁冰花观后感
2015/06/10 职场文书
2016年基层党支部书记公开承诺书
2016/03/25 职场文书
如何计划开一家便利店?
2019/07/31 职场文书
《三国志》赏析
2019/08/27 职场文书