基于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 相关文章推荐
js不是基础的基础
Dec 24 Javascript
对象的类型:本地对象(1)
Dec 29 Javascript
一个对于js this关键字的问题
Jan 09 Javascript
ext 代码生成器
Aug 07 Javascript
JS扩展方法实例分析
Apr 15 Javascript
javascript实现支持移动设备画廊
Aug 24 Javascript
JS判断鼠标进入容器的方向与window.open新窗口被拦截的问题
Dec 23 Javascript
javascript算法之二叉搜索树的示例代码
Sep 12 Javascript
ionic3实战教程之随机布局瀑布流的实现方法
Dec 28 Javascript
jQuery选择器选中最后一个元素,倒数第二个元素操作示例
Dec 10 jQuery
详解如何在Vue项目中发送jsonp请求
Oct 25 Javascript
在vue中使用console.log无效的解决
Aug 09 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
一个很方便的 XML 类!!原创的噢
2006/10/09 PHP
php获取post中的json数据的实现方法
2011/06/08 PHP
Laravel框架路由和控制器的绑定操作方法
2018/06/12 PHP
几个比较经典常用的jQuery小技巧
2010/03/01 Javascript
读jQuery之一(对象的组成)
2011/06/11 Javascript
JQuery调用WebServices的方法和4个实例
2014/05/06 Javascript
浅谈被jQuery抛弃的函数及替代函数
2015/05/03 Javascript
由浅入深讲解Javascript继承机制与simple-inheritance源码分析
2015/12/13 Javascript
实例讲解jquery与json的结合
2016/01/07 Javascript
全面解析JavaScript里的循环方法之forEach,for-in,for-of
2020/04/20 Javascript
使用nodeJs来安装less及编译less文件为css文件的方法
2017/11/20 NodeJs
详解Chai.js断言库API中文文档
2018/01/31 Javascript
vuex 解决报错this.$store.commit is not a function的方法
2018/12/17 Javascript
详解JavaScript作用域和作用域链
2019/03/19 Javascript
解决vue addRoutes不生效问题
2020/08/04 Javascript
JavaScript实现滚动加载更多
2020/12/27 Javascript
[49:08]OpTic vs Serenity 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
python TCP Socket的粘包和分包的处理详解
2018/02/09 Python
pandas string转dataframe的方法
2018/04/11 Python
numpy使用fromstring创建矩阵的实例
2018/06/15 Python
GitHub 热门:Python 算法大全,Star 超过 2 万
2019/04/29 Python
将自己的数据集制作成TFRecord格式教程
2020/02/17 Python
Tensorflow安装问题: Could not find a version that satisfies the requirement tensorflow
2020/04/20 Python
C#笔试题
2015/07/14 面试题
金鑫耀Java笔试题
2014/09/06 面试题
英语专业推荐信
2013/11/16 职场文书
质检员岗位职责
2013/12/17 职场文书
《盲人摸象》教学反思
2014/02/16 职场文书
新春文艺演出主持词
2014/03/27 职场文书
乡镇干部个人对照检查材料思想汇报(原创篇)
2014/09/28 职场文书
2015应届毕业生求职信范文
2015/03/20 职场文书
初中团委工作总结
2015/08/13 职场文书
《我和小伙伴》教学反思
2016/02/20 职场文书
《好妈妈胜过好老师》:每个孩子的优秀都是有源头的
2020/01/03 职场文书
python中Matplotlib绘制直线的实例代码
2021/07/04 Python
纯CSS打字动画的实现示例
2022/08/05 HTML / CSS