写点什么

所有主流浏览器都已支持 Web Animations API

  • 2020-07-15
  • 本文字数:1006 字

    阅读完需:约 3 分钟

所有主流浏览器都已支持Web Animations API

随着 Safari 13.1 的发布,所有主流浏览器也都提供了Web Animations API支持。


早期的 Web 浏览器动画通常是使用 JavaScript API 创建的。这种方法很灵活,但难以让浏览器通过硬件加速来优化动画,也不能将其连接到布局和渲染管道。


2007 年,WebKit 团队引入了CSS AnimationsCSS Transitions,并最终成为 Web 标准。这些 API 易于使用,并弥补了早期 JavaScript 动画的不足。


但是,CSS Animations 和 CSS Transitions 存在一些限制,特别是在动态创建、回放控制和生命周期管理方面。


Web Animations API 引入了一种解决方案,提供了 CSS Animations 和 CSS Transitions 的能力,同时还提供了 JavaScript API 的灵活性。Web Animations API 通过计时模型和动画模型实现了对 Web 动画的编程控制。现在可以通过让 JavaScript 访问 playbackrate、迭代、事件等来创建和控制动画,而之前一般使用 requestAnimationFrame 或效率较低的 setInterval 来实现。


现代浏览器(如 Firefox、Safari)和所有基于 Chrome 的浏览器(如 Chrome、Edge 和 Brave)都支持 Web Animations。早期的浏览器可以借助web-animations-js和框架(如 Dojo)来使用 Web Animations API。


Web Animations 规范为 Web 动画提供了一个共享模型,CSS Animations 和 CSS Transitions 作为这个共享基础模型之上的层而存在。


所有主流浏览器都支持 Web Animations 的调试。Safari 的 Web Inspector 在 Timelines 选项卡的媒体动画和动画时间轴中包含了动画。


Firefox动画检查器会沿着时间轴同步显示动画,提供了一个可拖动的小部件,你可以用它在时间轴上的任意点移动,并在该点查看页面。Firefox 动画检查器可以显示使用 Web Animations、CSS Animations 和 CSS @keyframes 规则创建的动画。


基于 Chrome 的浏览器提供了Chrome DevTools动画检查器,开发者可以用它来查看和修改动画。Chrome 动画检查器支持 CSS Animations、CSS Transitions 和 Web Animations,但不支持 requestAnimationFrame 动画。


所有现代浏览器都提供了对原生 Web Animations 的支持和对开发人员的工具支持,JavaScript 和 Web 开发人员可以快速高效地开发原生动画。尽管花了将近 15 年才达到这个成熟阶段,对于 web 平台来说仍然是一个重大的成就。


Web Animations是一个 W3C 工作草案推荐。开发人员可以通过 W3C CSS 工作组的GitHub代码库进行协作和反馈。


原文链接


Web Animations API Now Supported in All Evergreen Browsers


2020-07-15 13:302688

评论

发布
暂无评论
发现更多内容

程序员必冲!飞算 JavaAI 炫技赛,当甲方、赢好礼

飞算JavaAI开发助手

harmony-utils之SM4,SM4加解密

桃花镇童长老

HarmonyOS

园区智变时刻,网络该如何为企业撑腰?

脑极体

AI

智源研究院与北大医院达成战略合作

智源研究院

100万QPS短链系统如何设计?

不在线第一只蜗牛

数据库

ERP、MES、PLM、CRM、OA等企业常用软件的区别与联系

优秀

ERP mes PLM

6月27日-28日 AICon 北京站,我们在展位等您来!

MatrixOrigin

飞算科技:以飞算 JavaAI 为核心,打造企业级 Java 智能开发解决方案

飞算JavaAI开发助手

harmony-utils之SHA,SHA工具类

桃花镇童长老

HarmonyOS ArkTS

2025年Java面试:一线大厂高频面试题精选(附答案要点)!

程序员高级码农

java 程序员‘

【7 月 5 日北京】2025 IoTDB 用户大会,科研学术分论坛深度解密!各大教授最新研究等你来听

Apache IoTDB

ClickHouse 可观测性最佳实践

观测云

Clickhouse

HarmonyOSNext 崩溃急救指南:全局监听+同步退出 = 优雅保命!

Turing_010

ElevenLabs 语音智能体提示词指南——解锁 AI 语音交互的「灵魂秘籍」丨 Voice Agent 学习笔记

RTE开发者社区

HarmonyOS入门指南

桃花镇童长老

HarmonyOS ArkTS HarmonyOS NEXT

harmony-utils之SM2,SM2加解密

桃花镇童长老

HarmonyOS ArkTS

创世伙伴创投梁宇:技术公司要具备商业化视角,警惕新评价体系的范式变革

Xue Liang

《HarmonyOSNext应用崩溃自救指南:零数据丢失的故障恢复黑科技》

Turing_010

harmony-utils之MD5,MD5工具类

桃花镇童长老

HarmonyOS ArkTS

构建根技术生态新引擎,全栈赋能云端生产力

华为云开发者联盟

小米 AI 眼镜:主打「小爱 AI 语音助手」和「第一视角拍照录像」;出门问问发布硬件 TicNote:录音过程可发起对话丨日报

RTE开发者社区

harmony-utils之ECDSA,ECDSA工具类

桃花镇童长老

HarmonyOS ArkTS

harmony-utils之RSA,RSA加解密

桃花镇童长老

HarmonyOS

harmony-utils之SM3,SM3工具类

桃花镇童长老

HarmonyOS ArkTS

低代码开发×物联网:技术融合下的智能系统架构设计与行业实践路径

电子尖叫食人鱼

低代码 物联网

HBase Sync功能导致HBase入库性能下降

天翼云开发者社区

大数据

HDFS目录配额(quota)不足导致写文件失败

天翼云开发者社区

大数据

harmony-utils之ScanUtil,码工具类(扫码、码图生成、图片识码)

桃花镇童长老

HarmonyOS ArkTS

如何通过ETL把StarRocks中的数据同步到数仓

谷云科技RestCloud

数据库 数据同步 数仓 ETL StarRocks

Java中什么是类加载?类加载的过程?

量贩潮汐·WholesaleTide

Java

所有主流浏览器都已支持Web Animations API_大前端_Dylan Schiemann_InfoQ精选文章