我是靠谱客的博主 爱听歌薯片,这篇文章主要介绍vue项目中使用particles实现粒子背景效果及遇到的坑(按钮没有点击响应),现在分享给大家,希望可以做个参考。

为了提高页面展示效果,登录界面内容比较单一的,粒子效果作为背景经常使用到,vue工程中利用vue-particles可以很简单的实现页面的粒子背景效果。

解决问题:

  • 以背景方式显示
  • 无法获取按钮焦点,触发不了点击事件

实现过程

安装vue-particles

npm install vue-particles --save-dev

全局配置vue-particles

在main.js里面:

复制代码
1
2
import VueParticles from 'vue-particles' Vue.use(VueParticles)

使用 vue-particles

在vue文件template标签中:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
<template > <div v-loading.fullscreen.lock="loading" class="login" element-loading-spinner="fa fa-spinner fa-pulse fa-3x fa-fw"> <vue-particles color="#409EFF" :particleOpacity="0.7" :particlesNumber="80" shapeType="circle" :particleSize="4" linesColor="#409EFF" :linesWidth="1" :lineLinked="true" :lineOpacity="0.4" :linesDistance="150" :moveSpeed="3" :hoverEffect="true" hoverMode="grab" :clickEffect="true" clickMode="push" > </vue-particles> <el-form :rules="rules" :model="loginFrom" class="logContainer" ref="loginFrom" @keydown.enter.native="loginSubmit"> <h2 class="logtitle"><i class="fa fa-drupal fa-2x" style="color: #505458" /> 人 事 管 理</h2> <el-form-item prop="username"> <el-input type="text" v-model="loginFrom.username" placeholder="请输入用户名" class="inputbg" auto-complete="off"> <i slot="prefix" class="el-icon-user"></i> </el-input> </el-form-item> <el-form-item prop="password"> <el-input type="password" v-model="loginFrom.password" placeholder="请输入密码" auto-complete="off"> <i slot="prefix" class="el-icon-lock"></i> </el-input> </el-form-item> <el-form-item prop="code"> <el-input v-model="loginFrom.code" auto-complete="off" placeholder="验证码" style="width: 63%" @keyup.enter.native="loginSubmit"> <i slot="prefix" class="el-icon-view"></i> </el-input> <div class="login-code"> <img :src="codeUrl" @click="getCode"> </div> </el-form-item> <el-checkbox v-model="loginFrom.rememberMe" style="margin:0 0 25px 0;"> 记住我 </el-checkbox> <el-button type="primary" style="width:100%; position: relative;" @click="loginSubmit">登录</el-button> </el-form> </div> </template>

vue-particles有一个id为默认为particles-js,可以根据这个id来设置样式。设置之后就可以显示了。

复制代码
1
2
3
4
5
#particles-js{ width: 100%; height: calc(100% - 100px); position: absolute; }

我在做完这一步时,发现点击按钮触发不了。

后来做了如下修改;加个样式 position: relative;,将button的定位写出相对定位就OK啦,我也不知道啥原因,想着修改之前是好的, 可能 被position: absolute;  影响了,所以就一个个试 position的属性

复制代码
1
2
3
<el-button type="primary" style="width:100%; position: relative;" @click="loginSubmit">登录</el-button>

附:具体参数说明

color: String类型。默认'#dedede'。粒子颜色。
particleOpacity: Number类型。默认0.7。粒子透明度。
particlesNumber: Number类型。默认80。粒子数量。
shapeType: String类型。默认'circle'。可用的粒子外观类型有:"circle","edge","triangle", "polygon","star"。
particleSize: Number类型。默认80。单个粒子大小。
linesColor: String类型。默认'#dedede'。线条颜色。
linesWidth: Number类型。默认1。线条宽度。
lineLinked: 布尔类型。默认true。连接线是否可用。
lineOpacity: Number类型。默认0.4。线条透明度。
linesDistance: Number类型。默认150。线条距离。
moveSpeed: Number类型。默认3。粒子运动速度。
hoverEffect: 布尔类型。默认true。是否有hover特效。
hoverMode: String类型。默认true。可用的hover模式有: "grab", "repulse", "bubble"。
clickEffect: 布尔类型。默认true。是否有click特效。
clickMode: String类型。默认true。可用的click模式有: "push", "remove", "repulse", "bubble"。

总结

以上所述是小编给大家介绍的vue项目中使用particles实现粒子背景效果及遇到的坑(按钮没有点击响应),希望对大家有所帮助!

最后

以上就是爱听歌薯片最近收集整理的关于vue项目中使用particles实现粒子背景效果及遇到的坑(按钮没有点击响应)的全部内容,更多相关vue项目中使用particles实现粒子背景效果及遇到内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(460)

评论列表共有 0 条评论

立即
投稿
返回
顶部