基于Particles.js制作超炫粒子动态背景效果(仿知乎)


Posted in Javascript onSeptember 13, 2017

好久没登录知乎,发现他们的登录页面粒子动态效果蛮炫的,查一下代码用了Particles.js基于Canvas画布创建粒子颗粒效果。

上图

基于Particles.js制作超炫粒子动态背景效果(仿知乎)

上图: 

感觉有比格,就照着弄了一个,玩玩。

基于Particles.js制作超炫粒子动态背景效果(仿知乎)

github: https://github.com/VincentGarreau/particles.js/

操作过程:

网上有基本流程,可以参考一下,不过直接用在登录页面 会有小bug,需要调整下。

1、首先在页面中引入particles.js文件。

<script src="js/particles.js"></script>

2、在页面中使用一个div来作为放置粒子的容器。[一般放最底部,css 需要改进一下]

<div id="particles"></div>
<style type="text/css">
 #particles {
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1; //这个z-index 要是不设置 会对登录表单的点击产生干扰,会去抢风头,不好好做一个安静的背景。
  background-color: #26AFE3;
 }
</style>

3、加载配置文件:  网上讲 用load()方法 还得弄个配置的json文件,光路径 就搞残了我。

                  参考官方demo  http://codepen.io/VincentGarreau/pen/pnlso

                  直接在js里面写配置

<script type="text/javascript">
// particlesJS.load('particles', './js/app/particles.json', function() {
//  console.log('callback - particles.js config loaded');
// });
particlesJS("particles", {
 "particles": {
  "number": {
   "value": 30,
   "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": 10,
   "random": true,
   "anim": {
    "enable": false,
    "speed": 50,
    "size_min": 0.1,
    "sync": false
   }
  },
  "line_linked": {
   "enable": true,
   "distance": 300,
   "color": "#ffffff",
   "opacity": 0.4,
   "width": 2
  },
  "move": {
   "enable": true,
   "speed": 8,
   "direction": "none",
   "random": false,
   "straight": false,
   "out_mode": "out",
   "bounce": false,
   "attract": {
    "enable": false,
    "rotateX": 600,
    "rotateY": 1200
   }
  }
 },
 "interactivity": {
  "detect_on": "canvas",
  "events": {
   "onhover": {
    "enable": false,
    "mode": "repulse"
   },
   "onclick": {
    "enable": false,
    "mode": "push"
   },
   "resize": true
  },
  "modes": {
   "grab": {
    "distance": 800,
    "line_linked": {
     "opacity": 1
    }
   },
   "bubble": {
    "distance": 800,
    "size": 80,
    "duration": 2,
    "opacity": 0.8,
    "speed": 3
   },
   "repulse": {
    "distance": 400,
    "duration": 0.4
   },
   "push": {
    "particles_nb": 4
   },
   "remove": {
    "particles_nb": 2
   }
  }
 },
 "retina_detect": true
});
</script>

4,配置参数 option 以及使用:  option  github 官网页面就有详情。控制粒子数量 运动速度 什么的

   particles 用起来还是有点问题的,在chrome 下载文件后再切换到这个页面 就残废了。等解决方法。

总结

以上所述是小编给大家介绍的基于Particles.js制作超炫粒子动态背景效果(仿知乎),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
Prototype Selector对象学习
Jul 23 Javascript
JQery jstree 大数据量问题解决方法
Mar 09 Javascript
火狐4、谷歌12不支持Jquery Validator的解决方法分享
Jun 20 Javascript
jQuery实现Meizu魅族官方网站的导航菜单效果
Sep 14 Javascript
AngularJs bootstrap详解及示例代码
Sep 01 Javascript
Vue.js组件tree实现无限级树形菜单
Dec 02 Javascript
谈谈JS中常遇到的浏览器兼容问题和解决方法
Dec 17 Javascript
angularJS深拷贝详解
Mar 23 Javascript
mpvue将vue项目转换为小程序
Sep 30 Javascript
微信小程序公用参数与公用方法用法示例
Jan 09 Javascript
用Cordova打包Vue项目的方法步骤
Feb 02 Javascript
原生JS无缝滑动轮播图
Oct 22 Javascript
JS库之Particles.js中文开发手册及参数详解
Sep 13 #Javascript
Vue-Router进阶之滚动行为详解
Sep 13 #Javascript
Vue 滚动行为的具体使用方法
Sep 13 #Javascript
利用JS如何计算字符串所占字节数示例代码
Sep 13 #Javascript
VUE实现一个分页组件的示例
Sep 13 #Javascript
jquery 键盘事件的使用方法详解
Sep 13 #jQuery
详解angularJS+Ionic移动端图片上传的解决办法
Sep 13 #Javascript
You might like
php格式化工具Beautify PHP小小BUG
2008/04/24 PHP
关于svn冲突的解决方法
2013/06/21 PHP
PHP使用SOAP调用.net的WebService数据
2013/11/12 PHP
PHP中4个加速、缓存扩展的区别和选用建议
2014/03/12 PHP
3种方法轻松处理php开发中emoji表情的问题
2016/07/18 PHP
laravel实现批量更新多条记录的方法示例
2017/10/22 PHP
js 获取计算后的样式写法及注意事项
2013/02/25 Javascript
JS实现字体选色板实例代码
2013/11/20 Javascript
jquery中的常用事件bind、hover、toggle等示例介绍
2014/07/21 Javascript
JavaScript 学习笔记之变量及其作用域
2015/01/14 Javascript
jQuery AjaxUpload 上传图片代码
2016/02/02 Javascript
JavaScript获取当前运行脚本文件所在目录的方法
2016/02/03 Javascript
layer的prompt弹出框,点击回车,触发确定事件的方法
2019/09/06 Javascript
javascript实现滚动条效果
2020/03/24 Javascript
[01:29:42]Liquid vs VP Supermajor决赛 BO 第一场 6.10
2018/07/05 DOTA
Python 用户登录验证的小例子
2013/03/06 Python
学习python 之编写简单乘法运算题
2016/02/27 Python
Python 实现链表实例代码
2017/04/07 Python
python数据结构之链表详解
2017/09/12 Python
Python学习小技巧总结
2018/06/10 Python
Python 串口读写的实现方法
2019/06/12 Python
pygame实现贪吃蛇游戏(上)
2019/10/29 Python
python 瀑布线指标编写实例
2020/06/03 Python
运行Python编写的程序方法实例
2020/10/21 Python
Selenium执行完毕未关闭chromedriver/geckodriver进程的解决办法(java版+python版)
2020/12/07 Python
纯CSS3打造动感漂亮时尚的扇形菜单
2014/03/18 HTML / CSS
使用HTML5 Geolocation实现一个距离追踪器
2018/04/09 HTML / CSS
高中生自我评价个人范文
2013/11/09 职场文书
教师简历自我评价
2014/02/03 职场文书
财务担保书范文
2014/04/02 职场文书
结婚保证书范文
2014/04/29 职场文书
萤火虫之墓观后感
2015/06/05 职场文书
2015年小学生国庆节演讲稿
2015/07/30 职场文书
2016年9月份红领巾广播稿
2015/12/21 职场文书
2016年社会主义核心价值观心得体会
2016/01/21 职场文书
Python爬虫之用Xpath获取关键标签实现自动评论盖楼抽奖(二)
2021/06/07 Python