JS库中的Particles.js在vue上的运用案例分析


Posted in Javascript onSeptember 13, 2017

知乎的首页后面的粒子动效总觉得很炫酷,搜了一下,发现是用particles.js编写的。刚好目前的项目是利用vue框架的,两个凑在一起学了。

讲道理,这个用得好的话,页面是可以很酷的,譬如我现在写的项目

JS库中的Particles.js在vue上的运用案例分析

酷酷的登录页

嘻嘻~

安装particles.js

npm install --save particles.js

配置particles.js

1.data

这个data是用于控制粒子在页面中所呈现的状态。

{
"particles": {
 "number": {
 "value": 60,
 "density": {
  "enable": true,
  "value_area": 800
 }
 },
 "color": {
 "value": "#ffffff"
 },
 "shape": {
 "type": "circle",
 "stroke": {
  "width": 0,
  "color": "#000000"
 },
 "polygon": {
  "nb_sides": 5
 },
 "image": {
  "src": "img/github.svg",
  "width": 100,
  "height": 100
 }
 },
 "opacity": {
 "value": 0.5,
 "random": false,
 "anim": {
  "enable": false,
  "speed": 1,
  "opacity_min": 0.1,
  "sync": false
 }
 },
 "size": {
 "value": 3,
 "random": true,
 "anim": {
  "enable": false,
  "speed": 40,
  "size_min": 0.1,
  "sync": false
 }
 },
 "line_linked": {
 "enable": true,
 "distance": 150,
 "color": "#ffffff",
 "opacity": 0.4,
 "width": 1
 },
 "move": {
 "enable": true,
 "speed": 4,
 "direction": "none",
 "random": false,
 "straight": false,
 "out_mode": "out",
 "bounce": false,
 "attract": {
  "enable": false,
  "rotateX": 100,
  "rotateY": 1200
 }
 }
},
"interactivity": {
 "detect_on": "Window",
 "events": {
 "onhover": {
  "enable": true,
  "mode": "grab"
 },
 "onclick": {
  "enable": true,
  "mode": "push"
 },
 "resize": true
 },
 "modes": {
 "grab": {
  "distance": 140,
  "line_linked": {
  "opacity": 1
  }
 },
 "bubble": {
  "distance": 400,
  "size": 40,
  "duration": 2,
  "opacity": 8,
  "speed": 3
 },
 "repulse": {
  "distance": 200,
  "duration": 0.4
 },
 "push": {
  "particles_nb": 4
 },
 "remove": {
  "particles_nb": 2
 }
 }
},
"retina_detect": true
}

2.template

这个就是动态粒子要展示的位置。

<div id="particles"></div>

3.script

因为涉及到dom树,所以必须在挂载结束后初始化particles.js。第一个参数id就是你在template上取得id名,像我要写的话就是particles。第二个参数是你的data存放的路径,个人建议使用相对路径。

mounted(){
 particlesJS.load('id','path to your particles.data');
}

4.style

#particles{
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #b61924;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
}

讲到这里会发现,还有一个最重要的点没讲出来,恩,就是particles.js 的引入。当你的使用范围比较小时,可以直接在当前vue文件的script中引入,即

//vue文件
import particles from 'particles.js'

又或者你觉得这样不好管理,一定要放在main文件中也可以

//main文件
import particles from 'particles.js'
Vue.use(particles)

最后呈现的效果如下

JS库中的Particles.js在vue上的运用案例分析

总结

以上所述是小编给大家介绍的JS库中的Particles.js在vue上的运用案例分析,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JQuery.closest(),parent(),parents()寻找父结点
Feb 17 Javascript
动态加载js和css(外部文件)
Apr 17 Javascript
Javascript Ajax异步读取RSS文档具体实现
Dec 12 Javascript
JavaScript实现的in_array函数
Aug 27 Javascript
浅谈页面装载js及性能分析方法
Dec 09 Javascript
jQuery实现的感应鼠标悬停图片色彩渐显效果
Mar 03 Javascript
jQuery+HTML5实现图片上传前预览效果
Aug 20 Javascript
BootStrap+Mybatis框架下实现表单提交数据重复验证
Mar 23 Javascript
快速理解 JavaScript 中的 LHS 和 RHS 查询的用法
Aug 24 Javascript
在vue项目中引入highcharts图表的方法(详解)
Mar 05 Javascript
记录一篇关于redux-saga的基本使用过程
Aug 18 Javascript
如何能分清npm cnpm npx nvm
Jan 17 Javascript
详解vue-router 路由元信息
Sep 13 #Javascript
基于Particles.js制作超炫粒子动态背景效果(仿知乎)
Sep 13 #Javascript
JS库之Particles.js中文开发手册及参数详解
Sep 13 #Javascript
Vue-Router进阶之滚动行为详解
Sep 13 #Javascript
Vue 滚动行为的具体使用方法
Sep 13 #Javascript
利用JS如何计算字符串所占字节数示例代码
Sep 13 #Javascript
VUE实现一个分页组件的示例
Sep 13 #Javascript
You might like
php selectradio和checkbox默认选择的实现方法详解
2013/06/29 PHP
php操作mongoDB实例分析
2014/12/29 PHP
Javascript中的var_dump函数实现代码
2009/09/07 Javascript
document.getElementById方法在Firefox与IE中的区别
2010/05/18 Javascript
JS对select控件option选项的增删改查示例代码
2013/10/21 Javascript
JS和JQUERY获取页面大小,滚动条位置,元素位置(示例代码)
2013/12/14 Javascript
javascript判断是手机还是电脑访问网页的简单实例分享
2014/06/03 Javascript
express的中间件cookieParser详解
2014/12/04 Javascript
JavaScript通过setTimeout实时显示当前时间的方法
2015/04/16 Javascript
JS中完美兼容各大浏览器的scrolltop方法
2015/04/17 Javascript
Bootstrap布局组件教程之Bootstrap下拉菜单
2016/06/12 Javascript
通过JS获取Request.QueryString()参数的值实现方法
2016/09/27 Javascript
详解nodejs 文本操作模块-fs模块(三)
2016/12/22 NodeJs
nodejs简单实现TCP服务器端和客户端的聊天功能示例
2018/01/04 NodeJs
详解React项目如何修改打包地址(编译输出文件地址)
2019/03/21 Javascript
利用Python中的mock库对Python代码进行模拟测试
2015/04/16 Python
python使用PyGame绘制图像并保存为图片文件的方法
2015/04/24 Python
python操作ssh实现服务器日志下载的方法
2015/06/03 Python
Python制作爬虫抓取美女图
2016/01/20 Python
Python爬虫模拟登录带验证码网站
2016/01/22 Python
Python常用知识点汇总
2016/05/08 Python
python3中int(整型)的使用教程
2017/03/23 Python
python学习之matplotlib绘制散点图实例
2017/12/09 Python
Django配置celery(非djcelery)执行异步任务和定时任务
2018/07/16 Python
Python函数中的可变长参数详解
2019/09/12 Python
如何Tkinter模块编写Python图形界面
2020/10/14 Python
Needle & Thread官网:英国仙女品牌
2018/01/13 全球购物
英国假睫毛购买网站:FalseEyelashes.co.uk
2018/05/23 全球购物
英国马匹装备和马术用品购物网站:Equine Superstore
2019/03/03 全球购物
阿玛尼美妆俄罗斯官网:Giorgio Armani Beauty RU
2020/07/19 全球购物
static函数与普通函数有什么区别
2015/12/25 面试题
关于幼儿的自我评价
2013/12/18 职场文书
xxx同志考察材料
2014/02/07 职场文书
银行行长竞聘演讲稿
2014/04/23 职场文书
初中优秀班集体申报材料
2014/05/01 职场文书
导游词之安徽巢湖
2019/12/26 职场文书