js实现炫酷光感效果


Posted in Javascript onSeptember 05, 2020

本文实例为大家分享了js实现炫酷光感效果的具体代码,供大家参考,具体内容如下

js实现炫酷光感效果

首先写一个大盒子

<div class="main"></div>

然后给这个大盒子添加样式

* {
 margin: 0;
 padding: 0;
}

html,
body {
 height: 100%;
 overflow: hidden;
}

body {
 background: darkblue;
}

.main {
 width: 8px;
 height: 8px;
 position: absolute;
 left: 50%;
 top: 50%;
 transform: translate(-50%, -50%);
 perspective: 800px; /* 视角 */
}

在这个大盒子周围写一圈小盒子,我们用js来动态生成

var main = document.getElementsByClassName("main")[0];

for (var x = 0; x < 30; x++) {
 var i = document.createElement("i");
 main.appendChild(i);
}

给这些小盒子添加样式

.main i {
 width: 8px;
 height: 8px;
 border-radius: 50%;
 background: rgba(255, 255, 255, 0.5);
 box-shadow: 0 0 10px 0 white;
 position: absolute;
}
var is = document.getElementsByTagName("i");
for (var i = 0; i < is.length; i++) {
 is[i].style.transform = `rotate(${i * 12}deg) translateX(80px)`;
}

效果如下

js实现炫酷光感效果

然后为这些小球添加css动画

.main i {
 width: 8px;
 height: 8px;
 border-radius: 50%;
 background: rgba(255, 255, 255, 0.5);
 box-shadow: 0 0 10px 0 white;
 position: absolute;
 animation: run 3s ease-in-out infinite;
}

@keyframes run {
 0% {
 opacity: 0;
 }
 10% {
 opacity: 1;
 }
 100% {
 opacity: 1;
 transform: translate3d(0, 0, 560px);
 }
}

效果如下

js实现炫酷光感效果

我们发现这些小球都是同时做动画的,那么我现在不想让他们同时做动画怎么办呢~,对了,设置延迟

for (var i = 0; i < is.length; i++) {
 is[i].style.transform = `rotate(${i * 12}deg) translateX(80px)`;
 is[i].style.animationDelay = `${i * 0.05}s`;
}

炫光效果如下

js实现炫酷光感效果

还没完

现在是30个i,我们把它变成60个会怎么样呢

var main = document.getElementsByClassName("main")[0];

for (var x = 0; x < 60; x++) {
 var i = document.createElement("i");
 main.appendChild(i);
}

var is = document.getElementsByTagName("i");
for (var i = 0; i < is.length; i++) {
 is[i].style.transform = `rotate(${i * 12}deg) translateX(80px)`;
 is[i].style.animationDelay = `${i * 0.05}s`;
}

效果如下

js实现炫酷光感效果

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

Javascript 相关文章推荐
JavaScript 图片预览效果 推荐
Dec 22 Javascript
jQuery实现表单input中提示文字value随鼠标焦点移进移出而显示或隐藏的代码
Mar 21 Javascript
简单实用的js调试logger组件实现代码
Nov 20 Javascript
jquery中的$(document).ready()使用小结
Feb 14 Javascript
页面刷新时记住滚动条的位置jquery代码
Jun 17 Javascript
jquery简单实现外部链接用新窗口打开的方法
May 30 Javascript
浅谈JavaScript 标准对象
Jun 02 Javascript
详解JS中的柯里化(currying)
Aug 17 Javascript
解决vue2.0 element-ui中el-upload的before-upload方法返回false时submit()不生效问题
Aug 24 Javascript
快速搭建Node.js(Express)用户注册、登录以及授权的方法
May 09 Javascript
基于vue-cli3创建libs库的实现方法
Dec 04 Javascript
通过实例了解Javascript柯里化流程
Mar 03 Javascript
js实现搜索提示框效果
Sep 05 #Javascript
jQuery实现简单三级联动效果
Sep 05 #jQuery
javascript canvas实现简易时钟例子
Sep 05 #Javascript
vue中使用vue-pdf的方法详解
Sep 05 #Javascript
Angular+Ionic使用queryParams实现跳转页传值的方法
Sep 05 #Javascript
vue 将多个过滤器封装到一个文件中的代码详解
Sep 05 #Javascript
js实现可爱的气泡特效
Sep 05 #Javascript
You might like
深入了解php4(2)--重访过去
2006/10/09 PHP
PHP实现用户认证及管理完全源码
2007/03/11 PHP
Windows 下的 PHP-PEAR 安装方法
2010/11/20 PHP
php中apc缓存使用示例
2013/12/25 PHP
微信公众平台DEMO(PHP)
2016/05/04 PHP
Javascript调用XML制作连动下拉列表框
2006/06/25 Javascript
JObj预览一个JS的框架
2008/03/13 Javascript
利用jQuery 实现GridView异步排序、分页的代码
2010/02/06 Javascript
NodeJS的模块写法入门(实例代码)
2012/03/07 NodeJs
兼容IE和Firefox火狐的上下、左右循环无间断滚动JS代码
2013/04/19 Javascript
jquery中插件实现自动添加用户的具体代码
2013/11/15 Javascript
js opener的使用详解
2014/01/11 Javascript
Javscript删除数组中指定元素并返回新数组
2014/03/06 Javascript
详解JavaScript中的客户端消息框架设计原理
2015/06/24 Javascript
javaScript 事件绑定、事件冒泡、事件捕获和事件执行顺序整理总结
2016/10/10 Javascript
JavaScript的继承实现小结
2017/05/07 Javascript
js生成word中图片处理方法
2018/01/06 Javascript
JS实现的合并两个有序链表算法示例
2019/02/25 Javascript
基于layui table返回的值的多级嵌套的解决方法
2019/09/19 Javascript
Python实现检测服务器是否可以ping通的2种方法
2015/01/01 Python
python实现拓扑排序的基本教程
2018/03/11 Python
使用pandas对两个dataframe进行join的实例
2018/06/08 Python
Python实现监控键盘鼠标操作示例【基于pyHook与pythoncom模块】
2018/09/04 Python
Python发展简史 Python来历
2019/05/14 Python
利用Python检测URL状态
2019/07/31 Python
Django使用中间件解决前后端同源策略问题
2019/09/02 Python
Python利用Xpath选择器爬取京东网商品信息
2020/06/01 Python
CSS3 Calc实现滚动条出现页面不跳动问题
2017/09/14 HTML / CSS
美国儿童珠宝在线零售商:Loveivy
2019/05/22 全球购物
Android面试题附答案
2014/12/08 面试题
局域网标准
2016/09/10 面试题
人事主管的岗位职责
2013/11/16 职场文书
播音主持女孩的自我评价分享
2013/11/20 职场文书
英语专业求职信
2014/07/08 职场文书
出差报告格式模板
2014/11/06 职场文书
小程序wx.getUserProfile接口的具体使用
2021/06/02 Javascript