写点什么

所有主流浏览器都已支持 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:302343

评论

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

GPTCache 悬赏令!寻找最佳捉虫猎手,豪华赏格等你来拿!

Zilliz

Zilliz AIGC ChatGPT LLM gptcache

接口测试|postman发送POST请求

霍格沃兹测试开发学社

Postman

接口测试|postman模拟请求头&界面的响应信息

霍格沃兹测试开发学社

Postman

接口测试|Postman设置断言

霍格沃兹测试开发学社

Postman

单元测试|unittest生成测试报告

霍格沃兹测试开发学社

Python

定档!WAVE SUMMIT 2023@全球开发者,8月16日北京见!

飞桨PaddlePaddle

人工智能 百度 paddle 飞桨 百度飞桨

让数据管理由繁至简的低代码开发平台

力软低代码开发平台

ThreadLocal实践案例两则

FunTester

喜讯! WorkPlus入选中国信通院数字产品“2023全景图”!

WorkPlus

利用文心千帆打造一个属于自己的小师爷

为自己带盐

大语言模型 文心千帆

校源行 | 2023年开放原子校源行开源大使培训圆满结束,考试时间正式公布

开放原子开源基金会

开源

接口测试|Postman发送带参数的Get请求

霍格沃兹测试开发学社

UI自动化 - 如何判断一个页面上元素是否存在?

霍格沃兹测试开发学社

开放原子开源基金会代表团出席Open Source Congress并参与专题研讨

开放原子开源基金会

时序数据高基问题揭秘:根因分析与解决之道

Greptime 格睿科技

时序数据库 云原生数据库 国产时序数据库 高基问题

saas堡垒机定义以及优势简单说明-行云管家

行云管家

SaaS 堡垒机 saas堡垒机

直播精华回顾|《2023中国营销+AIGC市场研究报告》照进产业现实

TE智库

安全文件传输的重要性及其对企业的影响

镭速

文件传输

一款好用的低代码开发平台是什么样的?

高端章鱼哥

低代码 低代码平台 JNPF

接口测试|Postman环境变量&全局变量设置

霍格沃兹测试开发学社

Postman

校源行|开放原子开源社团(山东大学)授牌仪式隆重举行

开放原子开源基金会

开源 山东大学

【十万个等保小知识】等保测评报告是在等保整改之后发吗?

行云管家

等保 等级保护 等保测评 等保整改

DLRover 在 K8s 上千卡级大模型训练稳定性保障的技术实践

AI Infra

人工智能 开源 AI 开发者 kubernetes 运维

飞书深诺数仓低代码方案实战

飞书深诺技术团队

开放原子开源基金会TOC(技术监督委员会)第七十九次全体会议

开放原子开源基金会

开源

接口测试|Postman持久化保存

霍格沃兹测试开发学社

Postman

基于低代码平台快速搭建应用

互联网工科生

低代码 低代码开发 JNPF java低代码开发平台

使用低代码平台提高生产力

树上有只程序猿

低代码 生产力 全栈开发 JNPF

马上解锁 StarRocks 存算分离,降本增效无需等!

StarRocks

数据库 大数据 数据仓库 存算分离

pycharm环境配置

霍格沃兹测试开发学社

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