视图跳转动画

概述

视图跳转动画,是指活动视图从一个视图切换至另外一个视图的过程中,展现给用户的动画效果。

View.js 提供的默认样式中,是不含跳转动画的。

设置动画

设置视图跳转动画时,开发者需要了解到视图的四种进入方式:

  1. 压入堆栈式进入

  2. 替换栈顶式进入

  3. 浏览器后退进入

  4. 浏览器前进进入

如果视图的跳转动画是不区分进入方式的,如:渐隐渐显,那么开发者不需要考虑上述差异,按照固定的模式实现即可。但如果想要根据进入方式的不同,呈现差异化的跳转动画,开发者就需要捕获进入方式,然后做出不同的响应。

例如:

区分进入方式的视图跳转动画

技术上,View.js 建议开发者使用 CSS3 animation,结合少量脚本实现跳转动画。具体流程如下:

  1. 使用 CSS,借助 animation、transition 等特性创建视图离开动画、视图进入动画

  2. 有条件地(例如:DOM 元素的 class 含有特定取值时)为视图的 DOM 元素引用动画并确定动画播放时长

  3. 通过 View.setSwitchAnimation 方法,以设置动画的“播放触发器”

对于动画的展现效果,以及动画的播放时长,View.js 均不加以限制,开发者可以自由定义。

下面,我们将从代码细节分析、说明动画的实现过程。

代码分析

HTML + CSS

JS

其中 View.setSwitchAnimation() 用于向 View.js 提供 “播放触发器”,告知 View.js 在何时播放什么动画:

  1. 压入堆栈时,源视图向左滑动隐藏,目标视图从右向左显示

  2. 弹出堆栈时,源视图向右滑动隐藏,目标视图从左向右显示

Last updated

Was this helpful?