动画
Animation
是 Web 动画 API 的一个接口,它表示单个动画播放器,并为动画节点或源提供播放控制和时间线。
构造函数
Animation()
-
创建一个新的
Animation
对象实例。
实例属性
Animation.currentTime
-
动画的当前时间值(以毫秒为单位),无论是在运行还是暂停。如果动画缺少
timeline
、处于非活动状态或尚未播放,则其值为null
。 Animation.effect
-
获取并设置与该动画关联的
AnimationEffect
。这通常是一个KeyframeEffect
对象。 Animation.finished
只读-
返回此动画的当前已完成 Promise。
Animation.id
-
获取和设置用于标识动画的
String
。 Animation.pending
只读-
指示动画当前是否正在等待异步操作,例如启动播放或暂停正在运行的动画。
Animation.playState
只读-
返回一个枚举值,描述动画的播放状态。
Animation.playbackRate
-
获取或设置动画的播放速率。
Animation.ready
只读-
返回此动画的当前就绪 Promise。
Animation.replaceState
只读-
指示动画是否处于活动状态、在被另一个动画替换后是否已自动删除,或者是否已通过调用
Animation.persist()
显式地保留。 Animation.startTime
-
获取或设置动画播放应开始的计划时间。
Animation.timeline
-
获取或设置与该动画关联的
timeline
。
实例方法
Animation.cancel()
-
清除此动画导致的所有
keyframeEffects
,并中止其播放。 Animation.commitStyles()
-
即使在动画被移除后,也将动画的当前样式状态提交到正在动画化的元素。它将导致当前样式状态以
style
属性内的属性形式写入正在动画化的元素。 Animation.finish()
-
根据动画是播放还是反向播放,查找动画的任一端。
Animation.pause()
-
暂停动画播放。
Animation.persist()
-
显式地保留动画,防止它在另一个动画替换它时 被自动移除。
Animation.play()
-
开始或恢复动画播放,或者如果动画先前已完成,则再次开始动画。
Animation.reverse()
-
反转播放方向,停止在动画的开头。如果动画已完成或未播放,它将从结束到开始播放。
Animation.updatePlaybackRate()
-
首先同步动画的播放位置,然后设置动画的速度。
事件
取消
-
当调用
Animation.cancel()
方法或动画从其他状态进入"idle"
播放状态时触发。 完成
-
动画播放完成时触发。
移除
-
当动画被浏览器 自动移除 时触发。
无障碍问题
对于患有注意力缺陷多动障碍 (ADHD) 等认知障碍的人来说,闪烁和闪动动画可能存在问题。此外,某些类型的运动可能是前庭疾病、癫痫和偏头痛以及暗视敏锐度的诱因。
考虑提供暂停或禁用动画的机制,以及使用 减少运动媒体查询(或等效的 用户代理客户端提示 Sec-CH-Prefers-Reduced-Motion
)为表示不希望动画体验的用户创建互补体验。
规范
规范 |
---|
Web 动画 # the-animation-interface |
浏览器兼容性
BCD 表格仅在浏览器中加载