JS库之ParticlesJS使用简介
发布时间 - 2026-01-11 03:13:30 点击率:次particles.js

A lightweight JavaScript library for creating particles.
一个轻量级的创建粒子背景的 JavaScript 库
我们先来看一下效果图:
标准版:
星空版:
泡泡版:
下雪版:
利用这个我们可以做些什么呢?
我觉得这个比较适合用在无背景的页面,或者说找不到合适的图片来做背景,那么,我们都可以使用这个。
比如说:
或者
嗯,效果都挺不错的。
那么,下面将介绍如何使用 particles.js 。
particlesJS 开源在Github上:https://github.com/VincentGarreau/particles.js
这个项目中有提供demo,可以直接下载这个项目,打开demo里面的index.html文件,即可看到效果。
那么,如果我们要构建自己的项目,该如何引入文件呢?
建议如下:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>particles.js</title> <meta name="description" content="particles.js is a lightweight JavaScript library for creating particles."> <meta name="author" content="Vincent Garreau" /> <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"> <link rel="stylesheet" media="screen" href="css/style.css" rel="external nofollow" > </head> <body> <div id="particles-js"></div> <!-- scripts --> <script src="js/particles.js"></script> <script src="js/app.js"></script> </body> </html>
particles.js 是它的库,我们肯定是要引入的,app.js 是参数配置文件,我们也要引入,而 demo 中的 stats.js 就没有必要引入了。
style.css 我们也可以引入,背景颜色是在css中设置的。
基于这个模板,我们可以在上面添加我们想要实现的功能,比如说注册登录功能,需要注意的是:
用 div 来封装我们要实现的功能代码块,并且在 css 中为这个 div 设置绝对定位。
下面介绍参数配置文件 app.js 文件的使用:
particles.number.value : 粒子的数量
particles.number.density : 粒子的稀密程度
particles.number.density.enable : 启用粒子的稀密程度 (true 或 false)
particles.number.density.value_area : 每一个粒子占据的空间(启用粒子密度,才可用)
particles.color.value : 粒子的颜色 (支持16进制”#b61924”,rgb”{r:182, g:25, b:36}”,hsl,以及random)
particles.shape.type: 粒子的形状 (”circle” “edge” “triangle” “polygon” “star” “image”)
particles.opacity.value: 粒子的透明度
particles.size.anim.enable: 是否启用粒子速度(true/false)
particles.size.anim.speed: 粒子动画频率
particles.size.anim.sync: 粒子运行速度与动画是否同步
particles.move.speed: 粒子移动速度
大家可以根据这些配置文件,配置自己喜欢的背景出来,下面提供两份完整配置文件 app.js。
配置文件一(经典背景):
{
"particles": {
"number": {
"value": 80,
"density": {
"enable": true,
"value_area": 800
}
},
"color": {
"value": "#ffffff"
},
"shape": {
"type": "polygon",
"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": "repulse"
},
"onclick": {
"enable": true,
"mode": "push"
},
"resize": true
},
"modes": {
"grab": {
"distance": 400,
"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": false
}
配置文件二(星空背景):
{
"particles": {
"number": {
"value": 160,
"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": 1,
"random": true,
"anim": {
"enable": true,
"speed": 1,
"opacity_min": 0,
"sync": false
}
},
"size": {
"value": 3,
"random": true,
"anim": {
"enable": false,
"speed": 4,
"size_min": 0.3,
"sync": false
}
},
"line_linked": {
"enable": false,
"distance": 150,
"color": "#ffffff",
"opacity": 0.4,
"width": 1
},
"move": {
"enable": true,
"speed": 1,
"direction": "none",
"random": true,
"straight": false,
"out_mode": "out",
"bounce": false,
"attract": {
"enable": false,
"rotateX": 600,
"rotateY": 600
}
}
},
"interactivity": {
"detect_on": "canvas",
"events": {
"onhover": {
"enable": true,
"mode": "bubble"
},
"onclick": {
"enable": true,
"mode": "repulse"
},
"resize": true
},
"modes": {
"grab": {
"distance": 400,
"line_linked": {
"opacity": 1
}
},
"bubble": {
"distance": 250,
"size": 0,
"duration": 2,
"opacity": 0,
"speed": 3
},
"repulse": {
"distance": 400,
"duration": 0.4
},
"push": {
"particles_nb": 4
},
"remove": {
"particles_nb": 2
}
}
},
"retina_detect": true
}
总结
以上所述是小编给大家介绍的ParticlesJS使用简介,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
# particlesjs
# 使用
# JS库particles.js创建超炫背景粒子插件(附源码下载)
# JS库之Three.js 简易入门教程(详解之一)
# JS库中的Particles.js在vue上的运用案例分析
# JS库之Particles.js中文开发手册及参数详解
# JS库之Waypoints的用法详解
# 配置文件
# 我们可以
# 小编
# 标准版
# 自己的
# 的是
# 是在
# 我觉得
# 在此
# 也要
# 找不到
# 中有
# 就没
# 给大家
# 可以直接
# 有必要
# 该如何
# 什么呢
# 在上面
# 或者说
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
laravel怎么通过契约(Contracts)编程_laravel契约(Contracts)编程方法
如何快速查询域名建站关键信息?
php做exe能调用系统命令吗_执行cmd指令实现方式【详解】
如何在腾讯云免费申请建站?
如何在万网主机上快速搭建网站?
javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】
QQ浏览器网页版登录入口 个人中心在线进入
如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南
Laravel怎么配置不同环境的数据库_Laravel本地测试与生产环境动态切换【方法】
nodejs redis 发布订阅机制封装实现方法及实例代码
如何挑选优质建站一级代理提升网站排名?
微信小程序 scroll-view组件实现列表页实例代码
如何快速上传自定义模板至建站之星?
浅谈javascript alert和confirm的美化
宙斯浏览器怎么屏蔽图片浏览 节省手机流量使用设置方法
Laravel Seeder填充数据教程_Laravel模型工厂Factory使用
利用JavaScript实现拖拽改变元素大小
桂林网站制作公司有哪些,桂林马拉松怎么报名?
如何批量查询域名的建站时间记录?
如何在IIS7上新建站点并设置安全权限?
JavaScript数据类型有哪些_如何准确判断一个变量的类型
为什么要用作用域操作符_php中访问类常量与静态属性的优势【解答】
Android使用GridView实现日历的简单功能
html如何与html链接_实现多个HTML页面互相链接【互相】
免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?
JavaScript如何实现错误处理_try...catch如何捕获异常?
如何挑选高效建站主机与优质域名?
Laravel如何处理文件下载请求?(Response示例)
Chrome浏览器标签页分组怎么用_谷歌浏览器整理标签页技巧【效率】
Win11怎么开启自动HDR画质_Windows11显示设置HDR选项
C语言设计一个闪闪的圣诞树
如何彻底删除建站之星生成的Banner?
Laravel N+1查询问题如何解决_Eloquent预加载(Eager Loading)优化数据库查询
如何用花生壳三步快速搭建专属网站?
Linux系统运维自动化项目教程_Ansible批量管理实战
如何用狗爹虚拟主机快速搭建网站?
Laravel如何发送系统通知?(Notification渠道示例)
Laravel怎么配置S3云存储驱动_Laravel集成阿里云OSS或AWS S3存储桶【教程】
如何注册花生壳免费域名并搭建个人网站?
轻松掌握MySQL函数中的last_insert_id()
微信小程序 require机制详解及实例代码
Laravel怎么定时执行任务_Laravel任务调度器Schedule配置与Cron设置【教程】
Laravel怎么发送邮件_Laravel Mail类SMTP配置教程
百度输入法ai面板怎么关 百度输入法ai面板隐藏技巧
linux写shell需要注意的问题(必看)
Python制作简易注册登录系统
清除minerd进程的简单方法
北京网站制作的公司有哪些,北京白云观官方网站?
如何基于PHP生成高效IDC网络公司建站源码?
如何在HTML表单中获取用户输入并结合JavaScript动态控制复利计算循环

