vue动画—通过钩子函数实现半场动画操作


Posted in Javascript onAugust 09, 2020

注意:

1.起始位置设置了一个(0,0)在第一遍执行时,是没有作用的。在一次入场动画执行完成之后,在最终位置停下来并不在起始位置,通过这里的位置的设置可以将入场动画结束时的位置调到这里

2.理解enter()函数的el的指代对象和done()指代的回调函数

3.理解this.show = !this.show,这句话有两个作用。一是:控制显示和隐藏,二是:false —> true为半场动画,true—>false又是为另半场动画。这样就能完成一直循环执行半场动画的效果了。

HTML代码:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Title</title>
 <script src="../lib/vue.js"></script>
</head>
<style>
 .ball{
  margin: 50px 50px;
  width: 15px;
  height: 15px;
  border-radius: 50px;
  background-color: brown;
 }
</style>
<body>
  <div id="app">
   <input type="button" value="跳进篮子里" v-on:click="show=!show">
   
   <transition
    v-on:before-enter="bEnter"
    v-on:enter="enter"
    v-on:after-enter="aEnter">
    <div class="ball" v-show="show"></div>
   </transition>
  </div>
 
  <script>
   var vm = new Vue({
    el:'#app', 
    data:{
     show:false
    },
    methods:{
     bEnter(el){
      el.style.transform = "translate(0,0)"
      //表示动画入场之前,坐标表示位置是在起始位置不动 
      //在一次入场动画执行完成之后,在最终位置停下来并不在起始位置,通过这里的位置的设置可以将入场动画结束时的位置调到这里 
     },
     enter(el,done){
      el.offsetTop;
      //必须要写一下offsetTop,offsetWeith等四种中的其中一种,强制刷新动画
      el.style.transform = "translate(200px,450px)";
      el.style.transition = "all 2s ease";
      
      done()
      //done是enter方法的原生的引用函数名,这里表示是回调函数,也就是接下来执行的操作aEnter(),消灭延迟效果。 
     },
     aEnter(el){
      this.show = !this.show;
     }
    }
    //这里的el代表,将要执行半场动画的对象,是第一个原生的参数,跟自定义指令的el作用是一样的 
   });
  </script>
</body>
</html>

效果:

vue动画—通过钩子函数实现半场动画操作

补充知识:vue动画只有离场动画,进场动画不生效

存在问题的图:(只有离场动画,进场动画不生效)

vue动画—通过钩子函数实现半场动画操作

解决之后效果图:

vue动画—通过钩子函数实现半场动画操作

解决办法:

在transition标签中加入appear属性

<template>
 <transition mode="out-in" appear>
  <div class="singer-detail">
  </div>
 </transition>
</template>

以上这篇vue动画—通过钩子函数实现半场动画操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
一个不错的应用,用于提交获取文章内容,不推荐用
Mar 03 Javascript
高效率JavaScript编写技巧整理
Aug 23 Javascript
一个字符串反转函数可实现字符串倒序
Sep 15 Javascript
JavaScript将字符串转换成字符编码列表的方法
Mar 19 Javascript
bootstrap响应式表格实例详解
May 15 Javascript
vue中使用codemirror的实例详解
Nov 01 Javascript
如何在vue里面优雅的解决跨域(路由冲突问题)
Jan 20 Javascript
vue中多个倒计时实现代码实例
Mar 27 Javascript
原生js实现贪食蛇小游戏的思路详解
Nov 26 Javascript
VUE+elementui组件在table-cell单元格中绘制微型echarts图
Apr 20 Javascript
React实现全选功能
Aug 25 Javascript
原生微信小程序开发中 redux 的使用详解
Feb 18 Javascript
js利用iframe实现选项卡效果
Aug 09 #Javascript
解决vue 退出动画无效的问题
Aug 09 #Javascript
在vue中使用console.log无效的解决
Aug 09 #Javascript
VUE中V-IF条件判断改变元素的样式操作
Aug 09 #Javascript
Vue 样式切换及三元判断样式关联操作
Aug 09 #Javascript
VSCode Vue开发推荐插件和VSCode快捷键(小结)
Aug 08 #Javascript
使用Vue-scroller页面input框不能触发滑动的问题及解决方法
Aug 08 #Javascript
You might like
无线电广播与收音机发展的历史回眸
2021/03/02 无线电
php 验证码实例代码
2010/06/01 PHP
PHP利用REFERER根居访问来地址进行页面跳转
2013/09/28 PHP
自定义session存储机制避免会话保持问题
2014/10/08 PHP
谈谈你对Zend SAPIs(Zend SAPI Internals)的理解
2015/11/10 PHP
PHP7.0连接DB操作实例分析【基于mysqli】
2019/09/26 PHP
关于Laravel参数验证的一些疑与惑
2019/11/19 PHP
Alliance vs Liquid BO3 第一场2.13
2021/03/10 DOTA
Javascript学习笔记1 数据类型
2010/01/11 Javascript
高性能web开发 如何加载JS,JS应该放在什么位置?
2010/05/14 Javascript
通过javascript的匿名函数来分析几段简单有趣的代码
2010/06/29 Javascript
使用Json比用string返回数据更友好,也更面向对象一些
2011/09/13 Javascript
jQuery中setTimeout的几种使用方法小结
2013/04/07 Javascript
jQuery将所有被选中的checkbox某个属性值连接成字符串的方法
2015/01/24 Javascript
Web打印解决方案之证件套打的实现思路
2016/08/29 Javascript
js实现砖头在页面拖拉效果
2020/11/20 Javascript
基于Phantomjs生成PDF的实现方法
2016/11/07 Javascript
利用JS实现页面删除并重新排序功能
2016/12/09 Javascript
使用clipboard.js实现复制功能的示例代码
2017/10/16 Javascript
jquery实现广告上下滚动效果
2021/03/04 jQuery
详解python3百度指数抓取实例
2016/12/12 Python
Python操作word常见方法示例【win32com与docx模块】
2018/07/17 Python
Django实现表单验证
2018/09/08 Python
python中partial()基础用法说明
2018/12/30 Python
使用Python的SymPy库解决数学运算问题的方法
2019/03/27 Python
如何在Python对Excel进行读取
2020/06/04 Python
解决Python 函数声明先后顺序出现的问题
2020/09/02 Python
关于PyCharm安装后修改路径名称使其可重新打开的问题
2020/10/20 Python
Gretna Green中文官网:苏格兰格林小镇
2019/10/16 全球购物
技校学生个人职业生涯规划范文
2014/03/03 职场文书
梅花魂教学反思
2014/04/25 职场文书
社区安全生产月活动总结
2014/07/05 职场文书
2014年个人工作总结范文
2014/11/07 职场文书
大学生村官个人总结
2015/02/15 职场文书
新闻简讯格式及范文
2015/07/22 职场文书
2016入党培训心得体会范文
2016/01/08 职场文书