简单的碰撞运动

Posted rain92

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了简单的碰撞运动相关的知识,希望对你有一定的参考价值。


需要的js
//碰撞运动
//对运动的方向以及临界值的处理
function bumpMove(obj) {
    clearInterval(obj.timer);
    var speedX = 10;
    var speedY = 10;
    timer = setInterval(function() {
        var L = obj.offsetLeft + speedX;
        var T = obj.offsetTop + speedY;

        if(T > document.documentElement.clientHeight - obj.offsetHeight) {
            T = document.documentElement.clientHeight - obj.offsetHeight;
            speedY *= -1;
        } else if(T < 0) {
            T = 0;
            speedY *= -1;
        }
        if(L > document.documentElement.clientWidth - obj.offsetWidth) {
            L = document.documentElement.clientWidth - obj.offsetWidth;
            speedX *= -1;
        } else if(L < 0) {
            L = 0;
            speedX *= -1;
        }

        obj.style.left = L + ‘px‘;
        obj.style.top = T + ‘px‘;
    }, 30);

}

 



<!
DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <link rel="stylesheet" type="text/css" href="../css/public.css"/> <style type="text/css"> #div1{width: 100px;height: 100px;background: red;position: absolute;} </style> <script type="text/javascript" src="../js/rainbow.js"></script> <script type="text/javascript"> window.onload=function(){ var oDiv=document.getElementById("div1"); bumpMove(oDiv); } </script> </head> <body> <div id="div1"></div> </body> </html>

 

以上是关于简单的碰撞运动的主要内容,如果未能解决你的问题,请参考以下文章

HTML5 Canvas彩色小球碰撞运动特效

Pygame碰撞检测

原生js实现一个DIV的碰撞反弹运动

Unity:3D 运动/碰撞检测失败(AddForce、MovePosition、transform.localPosition)

js 运动函数篇 (加速度运动弹性运动重力场运动(多方向+碰撞检测+重力加速度+能量损失运动)拖拽运动)层层深入

运动与数据的碰撞,华为分析运动健康行业模板上线