位置: IT常识 - 正文

目前最流行的 5 大 Vue 动画库,使用后太炫酷了(目前最流行的婚纱照风格)

编辑:rootadmin
目前最流行的 5 大 Vue 动画库,使用后太炫酷了

推荐整理分享目前最流行的 5 大 Vue 动画库,使用后太炫酷了(目前最流行的婚纱照风格),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:目前最流行的5个客厅布局,最后一个太实用了,目前最流行的5个客厅布局,最后一个太实用了,目前最流行的歌曲排行,目前最流行的51架构单片机是,目前最流行的歌曲有哪些,目前最流行的拓客方法,目前最流行的5个客厅布局,最后一个太实用了,目前最流行的 5g手机,内容如对您有帮助,希望把文章链接给更多的朋友!

⭐️ 本文首发自 前端修罗场(点击加入),是一个由 资深开发者 独立运行 的专业技术社区,我专注 Web 技术、答疑解惑、面试辅导以及职业发展。现在加入,私聊我即可获取一次免费的模拟面试机会,帮你评估知识点的掌握程度,获得更全面的学习指导意见,交个朋友,少走弯路,少吃亏!

🔥 本文作者已创建广受全网好评的 《前端面试题库》(点击收藏),该题库 针对准备找工作的应届生、初中高级前端工程师设计,以及想要巩固前端基础知识的开发者,文章中包含 90% 的面试考点和实际开发中需要掌握的知识,内容按点分类,环环相扣,重要的是,形成了前端技能树,提升了自己的前端技术水平。 作者对重点考题做了详细解析和重点标注(建议在 PC 上阅读),并通过图解、思维导图的方式帮你降低了学习成本,节省备考时间,尽可能快地提升。可以说目前市面上没有像这样完善的面试备考指南!

动画在交互方式中发挥着重要作用,它们可通过添加一些视觉风格来增强用户体验。 在本文中,我们将研究和比较目前最流行的 Vue.js 动画库。

vue-kinesis

首先是 vue-kinesis,它是一个强大的动画库,它提供了一系列组件,允许我们将交互式动画添加到我们的 Vue 应用程序中。 这个库会自然地对光标变化做出反应,并根据鼠标事件调用动画,但有趣的是,除此之外,vue-kinesis 还允许我们根据音频变化控制动画。

它的组件具有广泛的自定义属性,我们可以使用它们以编程方式控制动画,从而使我们能够轻松实现所需的效果。

安装

vue-kinesis 可用于 Vue 2 和 Vue 3。 要将这个库包含在 Vue 3 项目中,必须首先安装包:

​​npm install vue-kinesis@next

然后将其导入到文件中,如下所示:

import { createApp } from "vue";import App from "./App.vue";import VueKinesis from "vue-kinesis";const app = createApp(App);app.use(VueKinesis);app.mount("#app");

您还可以安装 Vue 2 版本:

npm install vue-kinesis

然后选择导入整个库,以便在项目中的任何位置都可以使用它:

// src/main.jsimport Vue from 'vue'import VueKinesis from 'vue-kinesis'Vue.use(VueKinesis);

或者只导入一个特定的组件:

import { KinesisContainer } from 'vue-kinesis'用法

这个库包括三个组件,每个组件都有自己的属性来控制交互流程:

Kinesis-container — 用于禁用或启用交互的包装器组件。 此外,为了附加触发动画的事件,支持移动(鼠标交互)和滚动。 但是,移动设备不支持 move 事件

Kinesis-element — 要应用动画的元素的包装组件,以及指定动画类型或来源

Kinesis-audio — 此组件用于指定在将音频源添加到 kinesis 容器时要响应的音频频率

示例:

<template> <div id="app"> <kinesis-container> Here, you can put <kinesis-element :strength="10"> whatever </kinesis-element> <kinesis-element :strength="20"> content! </kinesis-element> </kinesis-container> </div></template><script>import { KinesisContainer, KinesisElement } from "vue-kinesis";export default { name: "App", components: { KinesisContainer, KinesisElement, },};</script>

输出:

同样,下面是关于音频的示例:

<template> <div id="app"> <div class="main"> <div style="padding: 40px"> <button class="play-button" @click="togglePlaying"> {{ isPlaying ? "Stop" : "Play" }} </button> </div> <div style="padding: 40px"> <kinesis-container :audio="audioFile" :playAudio="isPlaying"> <kinesis-audio :audioIndex="50" type="scale"> <kinesis-element :strength="10" type="depth"> <div class="circle"></div> </kinesis-element> </kinesis-audio> </kinesis-container> </div> </div> </div></template><script>import { KinesisContainer, KinesisElement, KinesisAudio } from "vue-kinesis";export default { name: "App", components: { KinesisContainer, KinesisElement, KinesisAudio, }, data() { return { audioFile: require("./aud.mp3"), isPlaying: false, }; }, methods: { togglePlaying() { this.isPlaying = !this.isPlaying; }, },};</script>

输出:

在此示例中,我们定义了音频文件的路径并将其附加到 kinesis-container,并且由于 kinesis-audio 组件由此触发,我们在其中放置了一个正方形 div,以便每当我们单击切换播放的按钮时 ,div 做出反应。

如前所述,该库通过向包含在其中的元素添加 kinesis 动画来对音频文件中的光标更改、滚动事件或频率做出反应。 因此,它对于在这些范围内创建动画最有用。 然而,一个值得注意的例子是一个简单的音乐应用程序,其中一些其他元素对当前正在播放的音频做出反应。

vue-prix

vue-prix 是另一个很棒的 vue 动画库,可以轻松地为图像添加视差滚动效果。 在视差效果中,前景图像及其背景元素都在移动,但背景移动得慢得多,从而产生深度错觉。

安装npm i vue-prlx

然后在我们的入口文件中初始化它:

// src/main.jsimport Vue from 'vue'import VuePrlx from 'vue-prlx'Vue.use(VuePrlx);

或者,通过其 CDN 引入,如下所示:

<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.min.js"></script><script src="https://cdn.jsdelivr.net/npm/vue-prlx/dist/v-prlx.min.js"></script><script>Vue.use(VuePrlx.VuePrlxPlugin);</script>用法目前最流行的 5 大 Vue 动画库,使用后太炫酷了(目前最流行的婚纱照风格)

只需在图像标签中添加一个新的 v-prlx 属性,视差效果将立即启动:

<img src="path/to/img" v-prlx>

在移动设备上,默认禁用视差效果。 但是,您可以通过将 .mobile 附加到 v-prlx 属性来轻松启用它:

<img src="path/to/img" v-prlx.mobile>

此外,通过提供额外的对象,我们可以设置视差速度、反转其方向等等:

<img src="path/to/img" v-prlx="{ reverse: true, speed: 0.2, fromBottom: true }"/>

在 Web 应用程序中,视差效果通常添加到特色(侧面)图像中。

vue-fake3D-image

这是另一个轻量级的 Vue 库,它允许我们在 Vue 应用程序中为图像添加模拟的交互式 3D 效果。 而且,与我们讨论过的其他一些动画库不同,这个是 SSR 兼容的,这意味着它可以与服务器端渲染一起使用。

gif

安装npm install @luxdamore/vue-fake3d![在这里插入图片描述](https://img-blog.csdnimg.cn/792cc8cfd65542df8c689897c8ff3f13.gif)-image-effect

要开始将 3D 效果添加到我们的图像文件中,我们需要导入 Fake3dImageEffect 组件以及库 CSS 文件:

import { Fake3dImageEffect } from "@luxdamore/vue-fake3d-image-effect";import "@luxdamore/vue-fake3d-image-effect/dist/Fake3dImageEffect.css";export default { components: { "fake3d-image-effect": Fake3dImageEffect, },};

或者,如果您想让它成为可以从应用程序中的任何位置访问的全局插件,我们可以使用以下代码来实现:

// src/main.jsimport Fake3dImageEffect from "@luxdamore/vue-fake3d-image-effect";import "@luxdamore/vue-fake3d-image-effect/dist/Fake3dImageEffect.css";Vue.use(Fake3dImageEffect);

示例:

<template> <div id="app"> <fake3d-image-effect fill-height-content tag="div" :image="require('./path/to/aquarium.jpeg')" > <div class="container"> <h1>Boy at <u>Aquarium</u></h1> <p class="m-5"> Lorem ipsum dolor sit amet consectetur adipisicing elit. delectus! </p> <p>Photo by Biljana Martinić on Unsplash</p> </div> </fake3d-image-effect> <img alt="Vue logo" src="./assets/logo.png" /> </div></template><script>import { Fake3dImageEffect } from "@luxdamore/vue-fake3d-image-effect";import "@luxdamore/vue-fake3d-image-effect/dist/Fake3dImageEffect.css";export default { name: "App", components: { Fake3dImageEffect },};</script>

在这个例子中你可能已经注意到了,fake3dimage 组件还支持一些其他的 props,比如 fill-height-content prop,它将元素高度设置为 100vh(全高),以及 tag 属性,它允许我们选择 用于包装其他子元素的首选语义元素。

v-wave

这个库允许我们通过简单地添加一个新的 v-wave 属性在单击标记元素时为标记元素添加漂亮的波纹效果,类似于材质设计中的波纹效果。

这个库有一个有趣的特性,它可以很好地处理静态定位的元素,并且可以根据父元素自动猜测波浪的颜色。 但是,如果认为合适,您也可以设置首选颜色。

安装npm i v-waveVue3import {createApp} from 'vue'import VWave from 'v-wave'import App from './App.vue'createApp(App) .use(VWave) .mount('#app')Vue2import Vue from 'vue'import VWave from 'v-wave'Vue.use(VWave)用法

要开始使用这个库,只需将 v-wave 属性添加到要添加波纹效果的任何元素上:

<button v-wave>Click me!</button><button v-wave="{ color: 'blue' }">Click me too!</button>

结果:

我们可以通过更改其初始不透明度、持续时间、缓动和许多其他参数来进一步自定义涟漪效果:

<div v-wave="{ color: 'rebeccapurple', initialOpacity: 0.5, duration: 2, easing: 'ease-in',}"> Click me!</div>

结果:

vue-animate-onscroll

该库包含用于在元素滚动到视口时为其设置动画的指令。 然而,与之前的库不同的是,这个库没有直接提供帮助类或组件来允许我们向应用程序添加动画。 相反,它提供了指令,允许我们在应用程序的一部分滚动到视图中时调用动画。

安装npm install vue-animate-onscroll

引入:

import Vue from 'vue'import VueAnimateOnScroll from 'vue-animate-onscroll'Vue.use(VueAnimateOnScroll)用法

一旦作为 Vue 插件导入,我们可以通过向元素添加 v-animate-onscroll 属性以及我们的动画名称来在滚动时为元素设置动画:

<div v-animate-onscroll="'rotate">Rotate me once upon scroll</div>

但是,如前所述,我们仍然需要定义 CSS 动画 animation 才能触发动画。 一个更相关的例子如下所示:

<template> <div id="app"> <div class="flex-center"> <div> <h1>Awesome application</h1> <p> Lorem ipsum dolor sit amet consectetur adipisicing elit. Perspiciatis, eum. </p> </div> </div> <div class="main"> <img src="path/to/img" v-animate-onscroll="'swing'" /> </div> </div></template><style>/* create swing animation */@keyframes swing { 10% { transform: rotate(10deg); } 40% { transform: rotate(-10deg); } 60% { transform: rotate(5deg); } 80% { transform: rotate(-5deg); }}</style>

输出:

还值得一提的是,默认情况下,当一个元素滚动到视图中时,其对应的动画只会触发一次。 但是,我们可以使用 v-animate-onscroll.repeat 代替后者,这样只要元素滚动到视图中,就会触发动画:

<img src="path/to/img" v-animate-onscroll.repeat="'swing'" />

此外,您可以自定义要触发动画的滚动方向(向上或向下):

<div v-animate-onscroll="{up: 'animationName'}">Animate me once on scroll up</div><div v-animate-onscroll="{down: 'animationName'}">Animate me on upon scroll down</div><!-- Different animations for up and down directions --><div v-animate-onscroll="{down: 'animationName', up: 'anotherAnimationName'}">Animate me on scroll</div>

从头开始创建 CSS 动画可能很耗时。 出于这个原因,将此库与其他动画库(例如流行的 Animate.css)互换使用是一种常见的方法。

结尾

每个动画库都是不同的,并且有不同的方法使事情变得更容易。 还有许多动画库可供选择。

有了这篇文章,希望您能够从各种可用的动画库中进行选择,并找到一个完美地补充您的 Vue.js 应用程序的动画库。

如果你觉得这篇文章还不错,请点击下方小红心 👍🏻 ❤️,鼓励一下!我会继续为你带来优质的内容~我是前端修罗场,一个独立运行的专业技术社区,感谢你的关注与支持!

本文链接地址:https://www.jiuchutong.com/zhishi/288915.html 转载请保留说明!

上一篇:伏尔塔瓦河上的查理大桥和老城桥塔,捷克布拉格 (© Markus Lange/Offset)(伏尔塔瓦河上的纤夫)

下一篇:密歇根湖畔的阿德勒天文馆, 芝加哥伊利诺伊州 (© Amazing Aerial Agency/Offset by Shutterstock)(密歇根湖怎么读)

  • windows11安全中心怎么关闭(windows11安全中心实时保护关不了)

    windows11安全中心怎么关闭(windows11安全中心实时保护关不了)

  • 华为nova5i pro定位的是中端机吗(华为nova5pro定制版)

    华为nova5i pro定位的是中端机吗(华为nova5pro定制版)

  • 苹果钱包添加卡片无效(苹果钱包添加卡片需要6位密码)

    苹果钱包添加卡片无效(苹果钱包添加卡片需要6位密码)

  • 淘宝评价可以增加多少淘气值(淘宝评价可以增加评论吗)

    淘宝评价可以增加多少淘气值(淘宝评价可以增加评论吗)

  • 怎样在快手上找人(怎样在快手上找到同城的人)

    怎样在快手上找人(怎样在快手上找到同城的人)

  • 手机上课怎么投屏到电视上(手机上课怎么投屏到小度上)

    手机上课怎么投屏到电视上(手机上课怎么投屏到小度上)

  • 微信注销了还能查到聊天记录吗(微信注销了还能恢复吗)

    微信注销了还能查到聊天记录吗(微信注销了还能恢复吗)

  • 荣耀20 荣耀20pro 区别(荣耀20 荣耀20pro 手机壳)

    荣耀20 荣耀20pro 区别(荣耀20 荣耀20pro 手机壳)

  • 抖音里壁纸怎么换成自己照片(抖音壁纸如何)

    抖音里壁纸怎么换成自己照片(抖音壁纸如何)

  • 手机换卡里面的东西还有吗(手机换卡里面的话费怎么办)

    手机换卡里面的东西还有吗(手机换卡里面的话费怎么办)

  • 拼多多的拼小圈是什么时候开始有的(拼多多的拼小圈怎么关闭动态)

    拼多多的拼小圈是什么时候开始有的(拼多多的拼小圈怎么关闭动态)

  • 钉钉属于腾讯吗(钉钉是不是腾讯旗下的)

    钉钉属于腾讯吗(钉钉是不是腾讯旗下的)

  • vivo的语音助手叫什么(怎么打开vivo的语音助手)

    vivo的语音助手叫什么(怎么打开vivo的语音助手)

  • word字符功能区的功能是什么(word文档中的字符可以设置哪些效果)

    word字符功能区的功能是什么(word文档中的字符可以设置哪些效果)

  • 无线网连不上显示密码错误怎么回事(无线网连不上显示无ip分配怎么回事)

    无线网连不上显示密码错误怎么回事(无线网连不上显示无ip分配怎么回事)

  • siri只识别本人声音吗(siri只识别主人声音)

    siri只识别本人声音吗(siri只识别主人声音)

  • 笔记本哪个键是除以键(笔记本哪个键是调声音)

    笔记本哪个键是除以键(笔记本哪个键是调声音)

  • 微信群发部分人怎么发(微信群发部分人能看到吗)

    微信群发部分人怎么发(微信群发部分人能看到吗)

  • 华为手机怎么看电池寿命(华为手机怎么看型号)

    华为手机怎么看电池寿命(华为手机怎么看型号)

  • 手机qq能发多大的视频(手机qq能发大文件吗)

    手机qq能发多大的视频(手机qq能发大文件吗)

  • 闲鱼卖家延长收货在哪(闲鱼卖家延长收货)

    闲鱼卖家延长收货在哪(闲鱼卖家延长收货)

  • 自己怎么创建公众号(自己怎么创建公司)

    自己怎么创建公众号(自己怎么创建公司)

  • 一点就分享系列(理解篇5)Meta 出品 Segment Anything 4月6号版核心极速解读——主打一个”Zero shot“是贡献和辅助,CV依然在!(一点分享案例)

    一点就分享系列(理解篇5)Meta 出品 Segment Anything 4月6号版核心极速解读——主打一个”Zero shot“是贡献和辅助,CV依然在!(一点分享案例)

  • 建筑公司分包项目违法吗
  • 产品模板是固定的吗
  • 股东入股的标准
  • 8000块电脑大概能跑多少分
  • 支付土地使用权的会计处理
  • 进项税额留底月底销项税金如何结转?
  • 清算资金往来借贷方什么意思
  • 存款取款业务记入那个日记账?
  • 租房提前退租违约金国家标准
  • 公司持有的房产税
  • 验资后资金转给第三方
  • 有限合伙企业收益分配
  • 增值税普通发票几个点
  • 年底增值税有余额吗
  • 哪些情况下工资不低于最低工资标准的80
  • 城建税和教育费附加可以税前扣除吗
  • 替换重置的设备更新应考虑
  • 基本户里面的钱的用途
  • 让记事本文件自动删除
  • 企业发放职工薪酬的账务处理例子
  • 固定资产前期费用计入
  • 支付离退休人员退休金可以用现金结算吗
  • 短期借款利息的核算不可能涉及的账户是
  • PHP:mcrypt_ofb()的用法_Mcrypt函数
  • laravel视频教程
  • 隐藏在草丛里
  • 存货出入库的账务处理
  • php import
  • 罚款属于应付账款吗
  • reset fields
  • vue3动态路由权限
  • 视觉slam有多难
  • 员工离职补偿怎么入账
  • 外地工程预缴的个人所得税是什么申报
  • 农村土地承包经营权流转合同
  • 小规模纳税人是什么意思
  • 企业所得税的计算公式三种
  • 小规模附加税减免性质代码如何选
  • 研发支出可以全是管理费用
  • 残疾人报税怎么报
  • 如何对php网站页面进行修改
  • mongodb 教程
  • 成本会计的岗位要求
  • 普票需要填写全额发票吗
  • 资产负债表中利息收入填在哪
  • mysql复制数据到另一张表
  • 小企业会计准则没有以前年度损益调整科目
  • 公司车辆缴纳车船税
  • SQL Server实时同步更新远程数据库遇到的问题小结
  • 计入资本公积的固定资产处置
  • 财政补助收入增加在哪一方
  • 销售返现如何做账务处理
  • 印花税新政策
  • 房地产企业的企业所得税是多少
  • 四技合同是什么?
  • 勾选发票必须当月认证吗
  • 所有符合条件x+5的绝对值加x- 2的绝对值等于七的数x
  • windows server 2008 r2离线激活
  • Win10 64位系统下鼠标右键刷新没反应的解决方案
  • WINDOWS操作系统最新版本
  • bios如何进去
  • linux例子
  • winxp系统用户不见了
  • win7系统升级win8
  • win8开始界面如何设置成win7
  • win7怎么设置自动开机时间
  • html截取字符串
  • Unity3D游戏开发标准教程吴亚峰于复兴人民邮电出版社
  • unity3d Sprite Packer如何用
  • 查cpu内存命令
  • jquery的validate前端表单验证
  • js文件设置编码
  • 关于翡翠手镯知识
  • jquery设置cookie值
  • 个体诊所可以申请医保报销吗
  • 成品油消费税税目税率表2023
  • 广东省国家税务局电子发票系统,网络设置
  • 乳胶枕属于什么经营范围
  • 浙江残保金征收标准
  • 广东省东莞市电子税务局官网
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设