vue_在vue中同时使用过渡和动画

复制代码
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Document</title>
  <link rel="stylesheet" type="text/css" href="https://cdn.bootcss.com/animate.css/3.7.2/animate.min.css">
  <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
  <style type="text/css">
  /*自己的动画*/
  .fade-enter,
  .fade-leave-to {
    opacity: 0;
  }

  .fade-enter-active,
  .fade-leave-active {
    transition: opacity 1s
  }
  </style>
</head>
<body>
  <div id="app">
    <h3>同时使用过渡和动画</h3>
    <!-- 初始渲染过渡(页面刷新的时候就使用动画)添加appear和appear-active-class -->
    <!-- 
    animated库使用的animate动画过渡,自定义的动画是使用transition过渡 
    在一些场景中,你需要给同一个元素同时设置两种过渡动效,
    比如 animation 很快的被触发并完成了,而 transition 效果还没结束。
    在这种情况中,你就需要使用 type attribute 并设置 animation 或 transition 来明确声明你需要 Vue 监听的类型。
    在transtion标签添加type="transition" 同时使用2中动画是使用transition的过渡动画时长
    
    自定义动画的过渡时长,也添加duration="1000" 表示过渡动画时长为1秒
    :duration="{enter: 2000,leave=1000}" 进场动画2秒,出场动画1秒
    -->
    <transition 
      name="fade"
      appear
      :duration="{enter: 2000,leave=1000}"
      enter-active-class="animated swing fade-enter-active" 
      leave-active-class="animated shake fade-leave-active"
      appear-active-class="animated swing"
    >
      <h2 v-if="show">hello world</h2>
    </transition>
    <button @click="handleClick">切换</button>
  </div>
</body>
<script type="text/javascript">

  let vm = new Vue({
    el: '#app',
    data: {
      show: true
    },
    methods: {
      handleClick () {
        this.show = !this.show
      }
    }
  })
</script>
</html>
复制代码

 

posted @   前端之旅  阅读(488)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示