Web Animation API

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

先简单的写一个页面,一个背景,一个小球
在这里插入图片描述
接下来,点击页面,小球会移动到点击的地方

 let box = document.getElementById('box') // 小球let container = document.getElementById('container') // 画布container.onclick = function (event) {let x_ = event.pageX // 记录小球的结束位置xlet 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([], {})
,可以看下最终实现的效果:

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/410530.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

flink1.14.5使用CDH6.3.2的yarn提交作业

使用CDH6.3.2安装了hadoop集群,但是CDH不支持flink的安装,网上有CDH集成flink的文章,大都比较麻烦;但其实我们只需要把flink的作业提交到yarn集群即可,接下来以CDH yarn为基础,flink on yarn模式的配置步骤…

JS-var 、let 、 const使用介绍

变量声明介绍 在我们日常开发用,变量声明有三个 var、 let 和 const,我们应该用那个呢? 首先var 先排除,老派写法,问题很多,可以淘汰掉…let or const ?建议: const 优先,尽量使…

JVM运行时数据区(下篇)

紧接上篇:JVM运行时数据区(上篇)-CSDN博客 堆 一般Java程序中堆内存是空间最大的一块内存区域。创建出来的对象都存在于堆上。 栈上的局部变量表中,可以存放堆上对象的引用。静态变量也可以存放堆对象的引用,通过静态…

SC20-EVB ubuntu14.04 Andriod 5.1 SDK编译下载

1.ubuntu14.04安装环境配置 vi /etc/profile to add export JAVA_HOME/usr/lib/jvm/java-7-openjdk-amd64 export JRE_HOME J A V A H O M E / j r e e x p o r t C L A S S P A T H . : {JAVA_HOME}/jre export CLASSPATH.: JAVAH​OME/jreexportCLASSPATH.:{JAVA_HOME}/lib…

Node.js安装

bibi视频 node.js安装 1去官网下载对应的软件 也可以直接下载我分享的安装包 链接:https://pan.baidu.com/s/1Q_Tfcn4f-J1y07Ce2SsMXw?pwdf11n 提取码:f11n –来自百度网盘超级会员V3的分享 2选择安装目录 3验证NodeJS环境变量\ NodeJS 安装完毕后…

FFmpeg连载6-音频重采样

今天我们的实战内容是将音频解码成PCM,并将PCM重采样成特定的采样率,然后输出到本地文件进行播放。 什么是重采样? 所谓重采样,一句话总结就是改变音频的三元素,也就是通过重采样改变音频的采样率、采样格式或者声道数…

新增PostgreSQL数据库管理功能,1Panel开源面板v1.9.3发布

2024年1月15日,现代化、开源的Linux服务器运维管理面板1Panel正式发布v1.9.3版本。 在这一版本中,1Panel新增了PostgreSQL数据库管理功能,并且支持设置PHP运行环境扩展模版。此外,我们进行了30多项功能更新和问题修复。1Panel应用…

网站SEO优化方案

1,去各类搜索引擎里面,注册你的站点 解决方案:注册地址:https://seo.chinaz.com/chinaz.com 2,网站地址使用 https 会增加搜索排名 解决方案:https:www.xxx.com 3,官网每个页面的 meta 里面&a…

基于WebSocket双向通信技术实现-下单提醒和催单(后端)

学习复盘和总结项目亮点。 扩展:该功能能应用在,各种服务类项目中。(例如:酒店、洗脚城等系ERP系中提醒类服务) 4. 来单提醒 4.1 需求分析和设计 用户下单并且支付成功后,需要第一时间通知外卖商家。通…

[GN] nodejs16.13.0版本完美解决node-sass和sass-loader版本冲突问题

项目场景: npm install 运行vue项目时候 问题描述 项目场景:sass-loader ,node-sass出错 ! ERESOLVE unable to resolve dependency tree npm ERR! npm ERR! While resolving: smoore-mes-web1.4.0 npm ERR! Found: webpack3.12.0 npm ER…

GEE:随机森林分类器投票方法的优化与修改

作者:CSDN @ _养乐多_ 在随机森林中,每棵决策树都对输入数据进行分类或回归,并产生一个输出。对于分类问题,这个输出通常是一个类别标签,而对于回归问题,输出通常是一个连续的数值。在分类问题中,每棵决策树会为每个样本投票,然后采用众数来确定最终的类别。例如,如果…

数据结构奇妙旅程之二叉树初阶

꒰˃͈꒵˂͈꒱ write in front ꒰˃͈꒵˂͈꒱ ʕ̯•͡˔•̯᷅ʔ大家好,我是xiaoxie.希望你看完之后,有不足之处请多多谅解,让我们一起共同进步૮₍❀ᴗ͈ . ᴗ͈ აxiaoxieʕ̯•͡˔•̯᷅ʔ—CSDN博客 本文由xiaoxieʕ̯•͡˔•̯᷅ʔ 原创 CSDN …