使用 Element 的 animate() 方法来给 UI 元件设置 CSS Animation 动画。
id 查找需要做动画的 Element 对象。Element 对象上的 animate API 实现动画。有两种不同的格式:
包含一个或多个属性的对象:
| Key | Value类型 | 是否可选 | 说明 | 默认值 |
|---|---|---|---|---|
| duration | Number | optional | 动画持续时间 | 0 |
| delay | Number | optional | 动画开始生效前的延迟时间 | 0 |
| iterations | Number | optional | 动画的重复次数。可以将其设为Infinity令动画无限循环。 | 1 |
| direction | String | optional | 动画的播放方向:向前(normal)、向后(reverse)、每次迭代切换方向(alternate),或向后并在每次迭代后切换方向(alternate-reverse)。默认值为 "normal"。 | "normal" |
| easing | String | optional | 动画的时间函数,表示动画在时间上的变化速率。接受一个timing-function,例如"linear", "ease-in", "step-end", or "cubic-bezier(0.42, 0, 0.58, 1)"。 | "linear" |
| fill | String | optional | 表示动画在执行之前和之后如何将样式应用于其目标,接受一个animation-fill-mode,例如"backwards","forwards","both"。 | "none" |
| name | String | optional | 动画的名字,可作为动画的唯一标识。该名字会出现在动画事件参数中,通常用于判断某个动画事件是否是你想要的。 | 内部的unique ID |
| play-state | String | optional | 动画的运动状态,定义一个动画是否运行或者暂停,接受一个animation-play-state | running |
name,每次生成一个自增的 unique id 作为 name。name 的动画无法连续多次触发。返回 Animation 对象。
Animation 对象上的方法:
| 方法名 | 说明 |
|---|---|
Animation.cancel() | 取消动画的执行,会触发animation cancel事件。 |
Animation.pause() | 暂停动画的执行。 |
Animation.play() | 恢复动画的执行。 |
lynx.getElementById("test").animate 都会生成一个新的 Animation 对象,同时后面创建的动画会覆盖前面创建的动画。lynx.getElementById("test").animate 来创建一个新的 Animation 对象。。在 Lynx 3.4 版本后,animate() 可以通过 createSelectorQuery() 来调用。
该方式属于实验性功能。
在 Lynx 3.4 版本后,可以通过 createSelectorQuery() 来在一个节点上同时启动多个动画。
该方式属于实验性功能。
Animate API 的事件和 CSS Animation 动画事 件相同。
Animate API 与 CSS Animation 会互相覆盖,后生效的那一方会覆盖前者。
Animate API 不生效,可能是 getElementById 未能选中节点:
LCD tables only load in the browser