当前位置: 首页 > news >正文

抛物线运动路径动画实现

addBtn.onclick = function () {const div = document.createElement('div');div.className = 'add-circle';const span = document.createElement('span');span.className = 'add-icon';div.appendChild(span);document.body.appendChild(div);// 外层容器横向移动,里面图标纵向偏移div.style.transform = 'translateX(100px)';span.style.transform = 'translateY(100px)';div.clientWidth; // 强制回流然后渲染div.style.transform = 'translateX(300px)';span.style.transform = 'translateY(700px)';
};
.add-circle {position: fixed;left: 50px;top: 50px;width: 40px;height: 40px;border-radius: 50%;transition: 1s linear;
}
.add-icon {display: block;width: 30px;height: 30px;background-color: black;border-radius: 50%;transition: 1s cubic-bezier(0.5, -0.5, 1, 1);
}

https://cubic-bezier.com/#.5,-0.5,1,1
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
重点:控制父容器横向移动,小球纵向移动,为了模拟抛物线运动,过渡的时间速度曲线函数要使用cubic-bezier(0.5, -0.5, 1, 1);绘制出的时间速度曲线函数如第一张图所示,可以模拟按照抛物线路径运动。

相关文章:

  • C语言实现INI配置文件读取和写入
  • 论文浅尝 | HOLMES:面向大语言模型多跳问答的超关系知识图谱方法(ACL2024)
  • 论信息系统项目的范围管理
  • 大模型笔记-“训练”和“推理”概念
  • 数据库表字段插入bug
  • vhca_id 简介,以及同 pf, vf 的关系
  • 初识SOC:RK3588
  • UML活动图零基础入门:1 分钟掌握核心逻辑(附实战模板)
  • 后端框架(2):Java的反射机制
  • 5G行业专网部署费用详解:投资回报如何最大化?
  • Java 接口中实现异步处理的方法
  • milvus学习笔记
  • 虚拟来电 4.3.0 |集虚拟来电与短信于一体,解锁VIP优雅脱身
  • Android从单体架构迁移到模块化架构。你会如何设计模块划分策略?如何处理模块间的通信和依赖关系
  • 从实模式到保护模式
  • 每日算法刷题Day8 5.15:leetcode滑动窗口4道题,用时1h
  • 使用Python实现简单的人工智能聊天机器人
  • 【基础】Windows开发设置入门6:Scoop开发者完全指南(AI整理)
  • AXI-LITE slave读写时序
  • MySQL 与 FastAPI 交互教程
  • 61岁云浮市律师协会副会长谭炳光因突发疾病逝世
  • 用贝多芬八首钢琴三重奏纪念风雨并肩20年
  • 官方通报汕头违建豪宅“英之园”将强拆:对有关人员严肃追责问责
  • 鄂州交警通报致1死2伤车祸:女子操作不当引发,已被刑拘
  • 美国和沙特签署上千亿美元军售协议
  • 成都警方通报:8岁男孩落水父母下水施救,父亲遇难