Web Animation API

这篇具有很好参考价值的文章主要介绍了Web Animation API。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

工作中经常会遇到需要动画的场景,连贯动画都是用CSS实现,,但是如果遇到需要用户互动介入的动画,那纯CSS很比较吃力,也不是不能实现,需要动态修改CSS变量,而且动画容易JS代码阻塞导致动画卡顿,不连贯,还好,web api推出了**animation动画解决方案**,并且不会触发回流,也就是不会被阻塞,不在主线程执行,利用渲染线程处理。

先简单的写一个页面,一个背景,一个小球
Web Animation API,Javascript,Html / CSS,javascript,html5,css3
接下来,点击页面,小球会移动到点击的地方

 let box = document.getElementById('box') // 小球
 let container = document.getElementById('container') // 画布

 container.onclick = function (event) {
   let x_ = event.pageX // 记录小球的结束位置x
   let y_ = event.pageY // 记录小球的结束位置y
   // 记录小球的起始位置
   let { x,y } = box.getBoundingClientRect()
   // 触发动画
   box.animate(
     [
       {
         transform: `translate(${x}px, ${y}px)`,
         offset: 0 // 执行的阶段 0%
       },
       {
         transform: `translate(${x_}px, ${y_}px)`,
         offset: 1 // 执行的阶段 100%
       }
     ],
     {
       duration: 800, // 动画执行时长
       fill: "forwards" // 动画执行完的状态
     }
   )
 }

我们说说他这个API怎么用,animate 动画,接收2个参数,一个动画改变的关键帧,另外一个对象,接收动画执行的参数
animate([], {})
,可以看下最终实现的效果:

Web Animation API,Javascript,Html / CSS,javascript,html5,css3文章来源地址https://www.toymoban.com/news/detail-800529.html

到了这里,关于Web Animation API的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包