<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> <script src="./lib/vue-2.4.0.js"></script> <!-- 这里引入第三方的动画js --> <link rel="stylesheet" href="./lib/animate.css"> <!-- 入场fadelUp 离场 zoomOut --> </head> <body> <div id="app"> <input type="button" value="点击" @click="flag=!flag"> <!-- 需求: 点击按钮,让 h3 显示,再点击,让 h3 隐藏 --> <!-- 第一种方式: --> <transition enter-active-class="animated bounceIn" leave-active-class="animated bounceOut"> <h3 v-if="flag">这是一个H3</h3> </transition> <!-- 第二种方式: --> <!-- 这里使用 :duration="毫秒值" 来统一设置 入场 和 离场 时候的动画时长 --> <transition enter-active-class="bounceIn" leave-active-class="bounceOut" :duration="200"> <!-- 这里要使用animated库 先在元素上添加这个库 然后在选择哪个特效 --> <h3 v-if="flag" class="animated">这是一个H3</h3> </transition> <!-- 使用 :duration="{ enter: 200, leave: 400 }" 来分别设置 入场的时长 和 离场的时长 --> <transition enter-active-class="bounceIn" leave-active-class="zoomOut" :duration="{ enter: 2000, leave: 400 }"> <h3 v-if="flag" class="animated">这是一个H3</h3> </transition> </div> <script> // 创建 Vue 实例,得到 ViewModel var vm = new Vue({ el: '#app', data: { flag: false }, methods: {} }); </script> </body> </html>