加速效果:增加重力值,随着定时器的执行,重力增大

回弹效果:当抵达目标位置时,将速度改为负值

回弹减速:将速度改变为负值的同时,乘以一个小数减少其速度

效果图:

html样式实现:

<style type="text/css">
            .cont{
                width: 1000px;
                height: 600px;
                background: #eee;
                margin: 20px auto;
                position: relative;
            }
            .box{width: 100px;height: 100px;background: red;position: absolute;left: 0;border-radius: 50%;}
        </style>

css标签创建:

<div class="cont">
            <div class="box"></div>
        </div>

js代码:

<script type="text/javascript">

//获取节点
        var obox = document.querySelector(".box");
        var ocont = document.querySelector(".cont");
        
        var speed = 10;        //设置步长
        var target = ocont.offsetHeight - obox.offsetHeight;    //设置目标
        var g = 2;            //设置重力
        var timer;           //设置计时器
        
        document.onclick = function(){
//            点击之前先清除,上一次
            clearInterval(timer)
            timer = setInterval(()=>{
//                重力加速
                speed += g;
//                判断是否到重点
                if(speed >= target-obox.offsetTop){
//                    强行确认到终点
                    obox.style.top = target + "px";
//                    回弹,回弹损耗
                    speed = -parseInt(speed*0.8);
//                    console.log(speed)
//                    当回弹不足1的时候,意味着不再弹起了,就可以清除计时器了
                    if(Math.abs(speed) < 1){
                        clearInterval(timer)
                    }
                }else{
//                    生效位置
                    obox.style.top = obox.offsetTop + speed + "px";
                }
            },30)        //频率
        }
        
        
    </script>

重力回弹(小球自由落体)相关推荐

  1. 模仿小球落下的重力回弹(自由落体)

    一.使用html+css将需要的小球,地面写入页面. 二.使用js实现小球竖直方向的重力回弹运动 加速效果:增加重力值,随着定时器的执行,重力增大 回弹效果:当抵达目标位置时,将速度改为负值 回弹减速 ...

  2. Silverlight2 边学边练 之三 小球自由落体

    终于看到动画章节了,本篇主要针对物体移动.变形和渐变移动进行练习. 完成小球自由落体慢镜实例,请大家多多拍砖,废话少说快快操练. XAML Code: <UserControl x:Class= ...

  3. html和css如何制作小球,[网页设计]使用CSS3动画模拟实现小球自由落体效果

    [网页设计]使用CSS3动画模拟实现小球自由落体效果 0 2015-07-20 14:00:03 使用纯CSS代码模拟实现小球自由落体效果: html代码如下:1 2 CSS样式代码:/*ball样式 ...

  4. matlab 地形模拟程序,MATLAB模拟小球自由落体运动

    大部分朋友学习MATLAB,需要一个学习示例用来参考,有一个比较经典的题目就是如何利用Matlab模拟小球自由落体运动,这可能会是你的某次课后作业,这个程序的编写过程可以分为三个步骤: 第一部分,设置 ...

  5. 第1关:小球自由落体运动-------C语言程序设计技术(循环结构程序设计1)

    第1关:小球自由落体运动-------C语言程序设计技术(循环结构程序设计1) #include<stdio.h> #include<math.h>int main(void) ...

  6. 小球自由落体_自由落体瀑布

    小球自由落体 2010 update: Lo, the Web Performance Advent Calendar hath moved 2010年更新: Lo, Web Performance ...

  7. C++入门——仿真小球自由落体运动和抛物线运动

    参考 <C和C++游戏趣味编程> 童真 仿真自由落体的小球 实现小球受重力影响加速下落后,碰到地面反弹的效果 代码如下: #include <graphics.h> #incl ...

  8. 小球自由落体及碰撞反弹

    目录 简述 构成 小球 按钮 运动轨迹 总结 简述 通过setInterval()定时刷新小球位置来完成小球运动状态,模拟自由落体加速度及碰撞反弹效果 构成 整体的物体很少,只有一个小球及一个开始按钮 ...

  9. matlab小球水平抛出,如何用Matlab制作小球自由落体运动的动画

    第一堂课布置了一个Mission Impossible作业,要求学生们用Matlab制作一个动画,模拟小球的自由落体运动. 以下将整个任务的问题解决的过程分享如下: 步骤一,这是一个动画的制作过程,以 ...

  10. canvas -小球自由落体运动

    最近学习canvas,就使用canvas写一个小球,再有重力作用下的落体运动 html: <canvas id="canvas" width="600" ...

最新文章

  1. n条直线相交最多有几个邻补角_【初一】 n(n1)模型在相交线中的应用
  2. 收发电子邮件属于计算机在方面的应用,计算机应用基础复习题(供参考).doc
  3. 神经网络模式识别matlab,基于matlab仿真的神经网络模式识别
  4. IDE / Qt / 浅谈 qmake 之 pro、pri、prf、prl文件
  5. Python:常用模块简介(1)
  6. netty并发量一般多少_Netty框架简介
  7. 修复版易支付源码可运营
  8. C语言读取raw格式图像,求指导,如何用c语言实现读取*.raw格式图像
  9. 第一个ncurses程序: hello world !!!
  10. 首个智能风控国际标准发布,蚂蚁风控技术入局全球
  11. 关于数字化学习的理论与实践
  12. 打乱数组 matlab,matlab对数组前N个数求和
  13. 数据库-表的定义与操作
  14. Eclipse的MAT的支配树
  15. 主流移动开发平台介绍
  16. Mac 隔空投送 AirDrop 搜不到 iPhone
  17. ariang修改默认服务器,Mac小技巧之AriaNg Native配置
  18. Android动画了解—转场/过渡(Transition) 动画
  19. 【数据结构】单链表逆序
  20. ocp认证考试报名_OCP最新报名考证流程

热门文章

  1. MATLAB 中出现 Undefined variable py or function py.command 错误
  2. week67(2021.10.23-2021.11.5)
  3. 星淘惠:做跨境电商为什么要选择亚马逊?
  4. CCS10.2入门(一)
  5. QT学习日志(附:简易计算器,qq登录界面,简易绘图板,植物大战僵尸魔改版项目实践)
  6. 2021.12.9洛谷小书童——凯撒密码——c语言
  7. 机器学习Sklearn Day4
  8. 灵魂发问,Java并发和线程池,只言片语真的可以讲清楚吗?
  9. Linux系统下的分区管理
  10. OPPO K7X手机刷root 获取magisk 强解锁BL coloros11教程