怎么给html5背景加上js粒子特效

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么给html5背景加上js粒子特效相关的知识,希望对你有一定的参考价值。

使用了particles.js

particles.js可以从github网站下载到最新的源码,网址是 https://github.com/VincentGarreau/particles.js/

使用方法非常简单

第一步,在html中引入脚本文件 particles.min.js,这个文件在下载的压缩包里可以找到

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

第二步,在html中放入一个div容器,设置id为particles-js。这个一般放在所有网页元素的最后面就可以。

<div id="particles-js"></div>
<style type="text/css">
  #particles-js 
    position: absolute;
    top:0;
    width:100%;
  
</style>

第三步,设置窗口样式

<style type="text/css">
  #particles-js 
    z-index: -1;
    position: absolute;
    top: 0;
    width: 100%;
    background: #aaa;
  </style>

第四步,脚本生成粒子效果,可以单独放在一个js文件里,也可以放在<script>标签里。无论如何,这段脚本要出现在div容器之后。

particlesJS("particles-js",   "particles":     "number":       "value": 380,      "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": 6,      "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": 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);

参考技术A 你好,Jquery修改背景图片方法如下:$("这里写css选择器").css("background-image","url(这里填图片路径)");或者$("css选择器").css("background-image":"url(图片路径)");比如修改一个p标签的背景为bjt.jpg可以写成:$("p").css('background-image':'url(bjt.jpg)')本回答被提问者采纳

three.js 粒子特效

参考技术A 通过粒子特效,实现动态背景或其它效果。

我们使用的是Points和PointsMaterial创建粒子的,需要确定的是粒子数量、粒子颜色、透明度、是否随离相机的远近调整大小、粒子的贴图等信息。

接下来根据粒子的数量,循环设置粒子的位置,并保存到定义的Geometry对象的vertices顶点队列中。

最后创建点类,并添加到场景中。

有些场景需要创建动态背景或者模仿雨雪天气,就需要让粒子无规则的运动。我们需要在创建粒子位置的时候给粒子增加一个随机的方向向量,在render循环渲染场景的函数中,改变每一个粒子的位置,并且需要更新顶点队列的数据,这样粒子才能无规则的运动。

有些场景需要粒子位置变化为另一个几何体(该几何体必须有顶点集合vertices),我们需要使用Tween平滑动画来改变每个粒子的位置,此处需要注意的是变化前后的模型顶点的数量相等和不等的情况。

以上是关于怎么给html5背景加上js粒子特效的主要内容,如果未能解决你的问题,请参考以下文章

教程HTML5 Canvas旋涡粒子动画特效

unity3d 在代码中怎样控制粒子特效的重新播放与停止?答案最好详细点,可以加分

案例html5 Canvas酷炫粒子图形变形动画特效

unity如何在粒子层下添加粒子,怎么在一个特效里添加多个不同的粒子

在网页中使用particlesjs实现背景的动态粒子特效

十二HTML5鼠标经过粒子散开动画特效