js修改display_Vue.js从零开始——过渡 / 动画效果(2)
题图是2013年在 OSRAM 的顶层拍的远景,能看到慕尼黑的高楼大厦不算多,远近也就看到4栋,左上的富士通,右侧远处的奥林匹克公园的高塔还有宝马大厦,最远处的那一栋我不知道是哪里了——这是因为不在老城区,老城区的话所有的建筑是不能高于玛丽安广场的老教堂的,这也是为什么大部分欧洲城市的高楼大厦偏少的原因,都是类似的情况。
言归正传,Vue 的过渡系统提供了非常多简单的方法设置进入、离开和列表的动效。那么对于数据元素本身的动效呢,比如:
- 数字和运算
- 颜色的显示
- SVG 节点的位置(我知道这个没有在 HTML 当中说明过,我本来是打算放在 CSS 部分后面的,不过 Web API 这个部分我自己也有点迷糊,所以先学了再分享会更好,考虑放在 Vue 这部分后面了)
- 元素的大小和其他属性
这些数据要么本身就以数值形式存储,要么可以转换为数值,有了这些数值后,我们就可以结合 Vue 的响应式和组件系统,使用第三方库来实现切换元素的过渡状态。
所以今天这个章节就是一起来看看元素的状态过渡效果。
1 状态动画
通过监听器我们能监听到任何数值类 DOM 属性的数值更新,这个可能听起来很抽象,所以让我们先来看看使用 GreenSock(另一个动画库) 一个例子:
<!DOCTYPE html>
我们可以看到当数值更新时,就会触发动画。
这个是一个不错的演示,但是对于不能直接像数字一样存储的值,比如 CSS 中的 color 的值怎么办?通过下面的例子我们来通过 Tween.js 和 Color.js 实现一个例子:
<!DOCTYPE html>
2 动态的状态过渡
就像 Vue 的过渡组件一样,数据背后状态过渡会实时更新,这个特点对于原型设计十分有用;当我们修改一些变量,即使是一个简单的 SVG 多边形也可实现很多难以想象的效果。
官网提供了一个例子(这里还是要说明一下,官方代码使用的是 var,而我这里大量使用 let 而不是 const 是因为演示原因,事实上有不少比如 generatePoints 方法定义当中的两个变量,其实都应该是常量,以防意料之外的修改):
<!DOCTYPE html>
3 用好组件进行过渡
管理太多的状态过渡会很快的增加 Vue 实例或者组件的复杂性,所以我们可以把动画放置在专用的子组件之内,这里我们来将之前数值变化的示例改写一下:
<!DOCTYPE html>
我们能在组件中结合使用这一节讲到各种过渡策略,和上一节提及的 Vue 内建过渡,总之,对于完成各种过渡动效几乎没有阻碍。
4 赋予设计以生命
这部分内容完全来自于官方手册:
只要一个动画,就可以带来生命。不幸的是,当设计师创建图标、logo 和吉祥物的时候,他们交付的通常都是图片或静态的 SVG。所以,虽然 GitHub 的章鱼猫、Twitter 的小鸟以及其它许多 logo 类似于生灵,它们看上去实际上并不是活着的。
Vue 可以帮到你。因为 SVG 的本质是数据,我们只需要这些动物兴奋、思考或警戒的样例。然后 Vue 就可以辅助完成这几种状态之间的过渡动画,来制作你的欢迎页面、加载指示、以及更加带有情感的提示。
Sarah Drasner 展示了下面这个 demo,这个 demo 结合了时间和交互相关的状态改变(小警告,完整代码很长,因为动画完全是由 svg 实现的,我这里仅仅是实现了本地化处理):
<!DOCTYPE html>
话说我的美术细胞是少了点,svg 也就不是我能玩得转的类型,看到人家的样例真是羡慕嫉妒恨啊……
js修改display_Vue.js从零开始——过渡 / 动画效果(2)相关推荐
- js html页面切换效果,jQuery实现切换页面过渡动画效果
这篇文章主要介绍了关于jQuery实现切换页面过渡动画效果,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 这是一款效果非常酷的jQuery和CSS3通过AJAX调用切换页面过渡动画特效 ...
- Vue入门之animate过渡动画效果
简介: transition方法的使用 transition内置方法 transition-group animate库实现过渡动画 `<!DOCTYPE html>` `<html ...
- react过渡动画效果的实现,react-transition-group
本文介绍react相关的过渡动画效果的实现 有点类似vue的transition组件,主要用于组件mount和unmount之前切换时应用动画效果 安装 cnpm install react-tran ...
- Flutter ColorTween实现颜色过渡动画效果
志在巅峰的攀登者,不会陶醉在沿途的某个脚印之中,在码农的世界里,优美的应用体验,来源于程序员对细节的处理以及自我要求的境界,年轻人也是忙忙碌碌的码农中一员,每天.每周,都会留下一些脚印,就是这些创作的 ...
- ppt模板页面过渡动画效果怎么制作?
一个好看的ppt模板,动画效果少不了,ppt模板制作软件也带了不少动画效果,ppt家园下面就来介绍一下ppt模板页面过渡动画效果怎么制作? 插入-图片-将两张图片素材导入-一张铺满PPT页面-一张放在 ...
- Fabric.js 删除元素(带过渡动画)
本文简介 Fabric.js 提供了2个方法删除对象. 一个是 直接删除,另一个方法是 带过渡动画 删除元素(淡出动画). 本文重点讲 带过渡动画 删除元素的方法,还会讲到设置 过渡时长 .删除后的 ...
- js实现3d标签云tag动画效果js特效代码
下载地址JS制作TAG标签云文字动画特效是一款当鼠标悬停某个标签时,当前标签静止,移出恢复滚动效果.tagcloud({ selector: ".tagcloud", //元素选择 ...
- 【前端】使用wow.js这个插件(实现页面动画效果),提高前端开发效率。
1.简介 有的页面在向下滚动的时候,有些元素会产生细小的动画效果.比如需要做到滚动条滑到某个位置时,才能显示动画. wow.js 依赖 animate.css,所以它支持 animate.css 多达 ...
- js模仿微信语音播放的动画效果
设计思路: 播放时使用js的setInterval来替换png达到动画效果 当前demo语音播放使用插件BenzAMRRecorder.js 如需要用其它js插件来播放语音也很容易集成到本demo 准 ...
最新文章
- 【神经网络】(3) 卷积神经网络(CNN),案例:动物三分类,附python完整代码
- Active Directory 账号迁移配置介绍
- 黑盒测试方法之等价类划分法
- Intel DAAL AI加速——支持从数据预处理到模型预测,数据源必须使用DAAL的底层封装库...
- python银行系统-python 银行系统
- hdu4971 流-最大权闭包
- Apache ZooKeeper - Leader Election使用场景
- 不同频率数据的处理方法V2
- 数据库面试题【五、索引的优缺点,什么时候使用索引,什么时候不能使用索引】
- USACO SECTION 1.1.2 Transformations 爆搜
- C++ 学习笔记----类篇
- linux挂载硬盘的分区创建,Linux 新增硬盘、新建分区、格式化硬盘、挂载硬盘的操作...
- matlab中创建一个工程,从文件夹创建新工程
- RIPS自动化地挖掘PHP源代码安全漏工具
- 我来谈谈小程序和工作方向
- JQ实现仿淘宝条件筛选
- 信息学奥赛一本通 1133:输出亲朋字符串 | OpenJudge NOI 1.7 05
- 实现石头剪刀布获胜法_用java实现一个猜拳小游戏
- linux内核zfs,ZFS与Linux文件系统的变革
- ubuntu 14.04 安装惠普打印机驱动(测试成功)
热门文章
- Xamarin.Forms的滚动视图ScrollView
- 简述ospf的工作原理_物联网水表工作原理简述
- JAVA同时输入用户名和密码_用java模拟设计一个简单的“用户注册”程序。当用户输入用户名和密码时,单击“注...
- 如何保留5个有效数字输出c不4舍5入_10 个C语言课设小项目拿走不谢~
- 海量分布式爬取抖音视频,几行代码搞定
- Python处理脑电--Epochs数据可视化
- 学习java的一些笔记(3)
- [UE4]网游中角色Pawn的移动位置同步以及RTS多角色同时移动的解决方案
- 全套L4自动驾驶方案降至1万美元,RoboTaxi玩家的反击开始了
- “恶意版”俄罗斯方块游戏火了,永远给你不想要的方块,世界纪录才消掉31行...