vue过渡动画详解

本文主要为大家带来一篇简单谈谈vue的过渡动画(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考,希望能帮助到大家。

在vue中,实现过渡动画一般是下面这样:

 

登录后复制

用一个transition对元素或者组件进行封装.

在过渡的时候,会有 4 个(CSS)类名在 enter/leave 的过渡中切换。

立即学习“前端免费学习笔记(深入)”;

1.v-enter: 定义进入过渡的开始状态。在元素被插入时生效,在下一个帧移除。

2.v-enter-active: 定义进入过渡的结束状态。在元素被插入时生效,在 transition/animation 完成之后移除。

3.v-leave: 定义离开过渡的开始状态。在离开过渡被触发时生效,在下一个帧移除。

4.v-leave-active: 定义离开过渡的结束状态。在离开过渡被触发时生效,在 transition/animation 完成之后移除。

上面是官方文档的原话,但是这4个类名如何运用呢?下面看个例子

 

css:.example { width: 100px; height: 100px; transform: translate3d(0, -100px, 0);}.fold-enter-active, .fold-leave-active { transition: all .5s;}.fold-enter, .fold-leave-active { transform: translate3d(0, 0, 0);}

登录后复制

当show = true时:

这里的fold-enter,是在元素显示的一瞬间被加入,然后瞬间被移除,在上面的例子中,example这个块状元素本来因为有了transform: translate3d(0, -100px, 0)这个样式,所以被上移了100px,但是因为fold-enter,所以将example这个块状元素移到了原位,但是fold-enter因为瞬间就被移除掉了,所以这时候的元素的样式又变成了transform: translate3d(0, -100px, 0),但是这时候fold-enter-active这个样式就生效了,因为设置了transition: all .5s,所以元素会在0.5s的时间内上移100px,在过渡动画结束之后,fold-enter-active这个类马上被移除.

当show = false时:

example不会马上消失,这个时候fold-leave-active这个类就起作用了,example这时的位置是在-100px,fold-leave-active定义的是过渡的结束状态:transform: translate3d(0, 0, 0);,但是同时又设置了transition: all .5s,所以这时元素会在0.5s的时间内下移100px.之后fold-leave-active被移除.

官网的一张图

vue过渡动画详解

另外,还可以在动画中调用js钩子函数:


登录后复制

不过用的不多,可以在methods中定义这些方法.

相关推荐:

CSS3中过渡动画怎么使用

利用transtion实现过渡动画

纯CSS3带过渡动画特效的分页条ui设计效果

以上就是vue过渡动画详解的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2788989.html

(0)
上一篇 2025年3月8日 18:36:41
下一篇 2025年3月8日 18:27:57

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • Vue-router结合transition实现app动画切换效果实例分享

    本文主要为大家带来一篇vue-router结合transition实现app前进后退动画切换效果的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望能帮助到大家。 一丶首先配置路由并且修改路由配置 路由…

    编程技术 2025年3月8日
    200
  • AngularJS中下拉框的基本用法详解

    本文主要介绍了angularjs中下拉框的基本用法,结合具体实例形式分析了angularjs下拉框的元素绑定、选中及显示等功能实现方法,需要的朋友可以参考下,希望能帮助到大家。 HTML正文: 等价于:{{item}}{{item.site…

    2025年3月8日
    200
  • JavaScript for循环if判断语句详解

    本文主要为大家带来一篇javascript for循环 if判断语句(学习笔记)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望能帮助到大家。 for(初始值;循环条件;操作){   满足条件要执行的代码…

    编程技术 2025年3月8日
    200
  • jqueryUI tab标签实例详解

    本文主要为大家分享了jqueryui tab标签页代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能帮助到大家。 var temp=1; var arr=[“我的首页”];  //×号点击关闭li $(“#tabs”).dele…

    编程技术 2025年3月8日
    200
  • ES6块级作用域详解

    众所周知es5之前javascript语言只有函数作用域和全局作用域,使用var来声明变量,var声明的变量还存在变量提升使人困惑不已。我们先来复习一下es5的var声明,再对比学习let和const 。 var var声明之函数作用域和全…

    编程技术 2025年3月8日
    200
  • MUI顶部选项卡的用法详解

    mui是一款最接近原生app体验的高性能前端框架,它的比较重要的功能是:下拉刷新、侧滑导航、滑动触发操作菜单和顶部(底部)选项卡等。 最近用MUI做手机app应用的时候,遇到的小bug。顺便研究了一下这个tab-top-webview-ma…

    编程技术 2025年3月8日
    200
  • Angular2模块懒加载实例详解

    本文主要介绍了浅谈angular2 模块懒加载的方法,小编觉得挺不错的,现在分享给大家,希望能帮助到大家。 当项目变得复杂庞大以后,如果所有页面都在一个模块里,就会出现首页加载慢的问题,因为首页就已经把整个项目加载进来了。所以,很有必要根据…

    2025年3月8日
    200
  • angular2路由预加载实例详解

    本文主要介绍了浅谈angular2路由预加载策略,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望能帮助到大家。 1.问题描述 在没有使路由懒加载的时候,第一次使用的时候加载特别慢,影响用户体验,angula…

    2025年3月8日
    200
  • JS数据访问对象模式详解

    本文主要为大家带来一篇js设计模式之数据访问对象模式的实例讲解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望能帮助到大家。 问题 大部分网站会将一些数据(如:用户Token)存储在前端,用来实现页面间的…

    编程技术 2025年3月8日
    200
  • vue路径优化之resolve详解

    通过vue-cli来创建vue+webpack的项目时,已经有很多都配置好了,但是路径方面为了方便开发,还可以优化。本文主要介绍vue路径优化之resolve,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望…

    编程技术 2025年3月8日
    200

发表回复

登录后才能评论