Vue动画之第三方类库实现动画方式

 更新时间:2023年04月19日 10:11:43   作者:何迟  
这篇文章主要介绍了Vue动画之第三方类库实现动画方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

Vue第三方类库实现动画

注意:

1.使用了Animate类库,方便直接调用各种动画。点击进入官网

2.用法大致同Bootstrap

HTML代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="../lib/vue.js"></script>
    <link rel="stylesheet" href="../lib/animate.css" rel="external nofollow" >
</head>
<body>
 
    <div id="app">
        <div>
            <input type="button" value="显示/隐藏" @click="flag=!flag" :duration="2000">
            <transition enter-active-class="animated bounceInUp" leave-active-class="animated bounceOutDown">
                <h3 v-if="flag">陈小帅是真的帅!</h3>
                <!--通过一个标识符,然后可以不停将转换true/false,达到隐藏显示的目的-->
            </transition>
            <!--将需要转换的动画用transition承载,在头部实现样式-->
            <!--:duration可以一同设置进场和出场的时间,:duration="{enter:1000,leave:4000}分别设置"-->
        </div>
    </div>
 
    <script>
        var vm = new Vue({
            el:"#app",
            data:{
                flag:false
            }
        })
    </script>
</body>
</html>

效果:

vue中常用的动画库

<div data-aos="fade-up"></div>
mounted() {
     AOS.init();
     // 你也可以在这里设置全局配置
      AOS.init({
        offset: 200,   
        duration: 600,   //持续时间
        easing: 'ease-in-sine',   
        delay: 100
     })
    },

animista-可直接插入使用

网址:https://animista.net/play/basic/scale-up

AOS.js滚动动画库

官网:https://www.xyhtml5.com/examples/aos/

  • 第一步:npm install aos --save
  • 第二步在main.js中:
import AOS from "aos";
import "../node_modules/aos/dist/aos.css";
Vue.use(AOS)
  • 第三步:在当前组件引入import AOS from "aos";

其他动画效果可查看官网

<div data-aos="fade-up" data-aos-offset="200"></div>
mounted() {
     AOS.init();
     // 你也可以在这里设置全局配置
      AOS.init({
        offset: 200,   
        duration: 600,   //持续时间
        easing: 'ease-in-sine',   
        delay: 100
     })
    },

在元素上还可以添加以下一些属性:

属性描述示例值默认值

  • data-aos-offset    是立刻触发动画还是在指定时间之后触发动画    200    120
  • data-aos-duration    动画持续时间    600    400
  • data-aos-easing    动画的easing动画效果    ease-in-sine    ease
  • data-aos-delay        动画的延迟时间        300        0
  • data-aos-anchor        锚元素。使用它的偏移来取代实际元素的偏移来触发动画    #selector    null
  • data-aos-anchor-placement    锚位置,触发动画时元素位于屏幕的位置        top-center    top-bottom
  • data-aos-once动画是否只会触发一次,或者每次上下滚动都会触发                true        false

*注意,aos-duration的动画持续时间的范围从50-3000毫秒,如果你想设置更大的值,可以在页面中添加下面的CSS代码

body[data-aos-duration='4000'] [data-aos], [data-aos][data-aos][data-aos-duration='4000']{    transition-duration: 4000ms;}

上面的代码将动画的持续时间修改为4000毫秒。

禁用AOS

在小屏幕中禁用

AOS.init({
  disable: 'mobile'
});

设置条件如小于1024像素

disable: window.innerWidth < 1024

或者传入函数

disable: function () {
    var maxWidth = 1024;
    return window.innerWidth < maxWidth;
}

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Vue子组件监听父组件值的变化

    Vue子组件监听父组件值的变化

    这篇文章主要介绍了Vue子组件监听父组件值的变化方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04
  • vue本地构建热更新卡顿的问题“75 advanced module optimization”完美解决方案

    vue本地构建热更新卡顿的问题“75 advanced module optimization”完美解决方案

    这篇文章主要介绍了vue本地构建热更新卡顿的问题“75 advanced module optimization”解决方案,每次热更新都会卡在 "75 advanced module optimization" 的地方不动了,如何解决这个问题呢,下面小编给大家带来了解决方案,需要的朋友可以参考下
    2022-08-08
  • vue如何动态加载组件详解

    vue如何动态加载组件详解

    组件是Vue.js最强大的功能之一,组件可以扩展HTML元素,封装可重用的代码,下面这篇文章主要给大家介绍了关于vue如何动态加载组件的相关资料,需要的朋友可以参考下
    2022-10-10
  • 过滤器vue.filters的使用方法实现

    过滤器vue.filters的使用方法实现

    这篇文章主要介绍了过滤器vue.filters的使用方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • Vue3基于 rem 比例缩放方案示例详解

    Vue3基于 rem 比例缩放方案示例详解

    这篇文章主要介绍了Vue3基于rem比例缩放方案,本缩放方案置于hooks中即可,文中通过示例代码介绍了vue-cli3 中使用rem布局的方法,需要的朋友可以参考下
    2023-05-05
  • vue用FileSaverJs导出文件

    vue用FileSaverJs导出文件

    FileSaver.js 是在客户端保存文件的解决方案,非常适合 在客户端上生成文件的 Web 应用,它是 HTML5 版本的 saveAs() FileSaver 实现,这篇文章主要介绍了vue用FileSaverJs导出文件,需要的朋友可以参考下
    2023-09-09
  • 手写vue无限滚动指令的详细过程

    手写vue无限滚动指令的详细过程

    今天在移动端项目中遇见一个需求,需要数据无限滚动,所以下面这篇文章主要给大家介绍了关于手写vue无限滚动指令的详细过程,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-09-09
  • Vue实现导航栏菜单

    Vue实现导航栏菜单

    这篇文章主要为大家详细介绍了Vue实现导航栏菜单,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-08-08
  • vue项目中使用Svg的方法

    vue项目中使用Svg的方法

    本文主要以 vue-cli3 搭建的项目为例,来聊一下如何在项目中更优雅的使用 svg 。感兴趣的朋友跟随小编一起看看吧
    2018-10-10
  • vue+iview框架实现左侧动态菜单功能的示例代码

    vue+iview框架实现左侧动态菜单功能的示例代码

    这篇文章主要介绍了vue+iview框架实现左侧动态菜单功能,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07

最新评论