css过渡

<transition name="slide">
<div v-show="!showChatInput" class="slide-footer" @click="showChatInput = !showChatInput" >回复</div>
</transition>
/* 可以设置不同的进入和离开动画 */
/* 设置持续时间和动画函数 */
.slide-enter-active,
.slide-leave-active{
transition: all 1s ease;
}
.slide-enter, .slide-leave-to {
transform: translateY(100%);
opacity: 0;
}
.slide-enter-to, .slide-leave {
transform: translateY(0);
opacity: 1;
}

xx-enter-active,xx-leave-active 是进入和离开的整个过程 设置过渡时间即可

xx-enter,xx-leave-to 是 进入前 和离开后的状态(对于简单的过渡,从下面滑入滑出,进入前和和离开后 本身就是同一状态 所以可以写一个样式)

xx-enter-to,xx-leave 是 进入后和离开前的状态

js 钩子函数过渡

<transition v-on:before-enter="beforeEnter"
v-on:enter="enter"
v-on:after-enter="afterEnter"
v-on:enter-cancelled="enterCancelled" v-on:before-leave="beforeLeave"
v-on:leave="leave"
v-on:after-leave="afterLeave"
v-on:leave-cancelled="leaveCancelled"> <com></com> // 某某过渡组件
</transition>
// --------
// 进入中
// -------- beforeEnter: function (el) {
// ...
el.style.transform = 'translateY(100%)'
el.style.opacity = 0
},
// 当与 CSS 结合使用时
// 回调函数 done 是可选的
enter: function (el, done) {
// ...
el.offsetWidth
el.style.transform = 'translateY(0)'
el.style.opacity = 1
el.style.transition = 'all 1s ease'
done()
},
afterEnter: function (el) {
// ...
this.footerHeight = '350px'
},
enterCancelled: function (el) {
// ...
}, // --------
// 离开时
// -------- beforeLeave: function (el) {
// ...
console.log('beforeleave')
// el.style.transform = 'translateY(0)'
// el.style.opacity = 1
},
// 当与 CSS 结合使用时
// 回调函数 done 是可选的
leave: function (el, done) {
// ...
console.log('leave')
setTimeout(() => {
// el.offsetWidth
el.style.transform = 'translateY(100%)'
el.style.opacity = 0
el.style.transition = 'all 20s ease'
done()
}) },
afterLeave: function (el) {
// ...
this.footerHeight = '40px'
},
// leaveCancelled 只用于 v-show 中
leaveCancelled: function (el) {
// ...
}

重点:

el.offsetWidth  是用来重绘页面的 不加上这句话 没有过渡效果 也可以用setTimeout((=>{}))

最新文章

  1. NPOI操作EXCEL(四)——反射机制批量导出excel文件
  2. Kafka随笔一
  3. div嵌套导致子区域margin-top失效不起作用的解决方法
  4. Bash条件判断
  5. IOS学习之路--OC的基础知识
  6. ubuntu13.04云主机部署gitlab6.6
  7. Zookeeper工作原理
  8. 【转载】Powershell在世纪互联Office365中批量将用户添加到组
  9. android常见错误-E/AndroidRuntime(13678): java.lang.NoClassDefFoundError:
  10. How Many Fibs_hdu_1316(大数).java
  11. ELK 日志分析体系
  12. 小谈JavaScript中this的用法
  13. 明确MangoDB在企业中应用
  14. Maven内置属性
  15. 力扣(LeetCode) 217. 存在重复元素
  16. [LeetCode&amp;Python] Problem 412. Fizz Buzz
  17. 11 个 Git 面试题
  18. Oracle ora-12514监听程序当前无法识别连接描述中请求的错误
  19. 一步一步搭建11gR2 rac+dg之配置单实例的DG(八)【转】
  20. JvisualVM的使用【转载】

热门文章

  1. Day5 - 06 函数的参数-命名关键字参数
  2. Git中一个由readme.md文件引起的问题
  3. Kafka消费者手动提交消息偏移
  4. beautiful soup 遇到class标签的值中含有空格的处理
  5. [日常摸鱼]Luogu2878 [USACO07JAN]Protecting the Flowers
  6. Gradle 是干什么吃的?
  7. Core3.0使用Caching.Memory
  8. java中给某个字段加锁
  9. 理解Tomcat工作原理
  10. c#——ToString()的各种用法