vue项目中使用particles实现粒子背景效果及遇到的坑(按钮没有点击响应)

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

解决问题:

  • 以背景方式显示

  • 无法获取按钮焦点,触发不了点击事件

实现过程

安装vue-particles

npm install vue-particles --save-dev

全局配置vue-particles

在main.js里面:

import VueParticles from 'vue-particles'

Vue.use(VueParticles)

使用 vue-particles

在vue文件template标签中:

<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来设置样式。设置之后就可以显示了。

#particles-js{

width: 100%;

height: calc(100% - 100px);

position: absolute;

}

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

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

<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实现粒子背景效果及遇到的坑(按钮没有点击响应) 的全部内容, 来源链接: utcz.com/p/237002.html

回到顶部