利用JS书写一个红色的球体在窗体中来回碰撞

CSS代码

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title></title>
        <style type="text/css">
        /*设置样式*/
            #rect{
                width: 75px;
                height: 75px;
                /*设置为圆形*/
                border-radius:100%;
                background-color: #FF0000;
                position: fixed;
            }
            
        </style>
        <!--引用JS代码-->
        <script type="text/javascript" src="js/index.js"></script>
    </head>
    <body>
        <div id="rect"></div>
    </body>
</html>

JS代码

// JS是弱语言类型,一个变量可以赋任意类型
var rect;
var x=0,y=0,speedX=5,speedY=5;
window.onload = function(){
    rect = document.getElementById("rect"); 
    setInterval(moveRect,50);
}

function moveRect(){
    x+=speedX;
    y+=speedY;
    //超出左边距
    if(x<0){
        speedX = Math.abs(speedX);
    }
    //超出上边距
    if(y<0){
        speedY = Math.abs(speedY);
    }
    // 超出右边距
    if(x>window.innerWidth - 75){
        speedX = -Math.abs(speedX);
    }
    //超出下边距
    if(y>window.innerHeight - 75){
        speedY = -Math.abs(speedY);
    }
    rect.style.left=x+"px";
    rect.style.top=y+"px";
}
效果图
效果图
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前几天刚刚学完css,这两天开始进军js部分,看了一些老师们的操作视频,有理论的,有展示的现象得到的一些结论的东西...
    流着万条永远的河阅读 852评论 3 3
  • 由于业务需要,最近开发并总结了关于JavaScript和原生app的交互的一些实现方式。 通常情况下,我们加载一个...
    __huangkun__阅读 6,403评论 2 15
  • 戴望舒彳亍过的雨巷,旧窗台上还摆放着我的猜想。 丁香姑娘的裙摆如果没镌刻碎花,我的白球鞋能否得青石板一欢喜? 阿婆...
    蔬菜肥阅读 470评论 5 7
  • 虽然分手了,但是还是会有留恋,所以选择将恋爱过程记录下来,当做美好的回忆吧!虽然彼此不能在一起,我想若干年后看到这...
    Dasiy313112阅读 464评论 0 3
  • 朋友新买了一双红色高跟鞋,十厘米的高跟将她原本令人艳羡的身材衬托的更加完美。穿上新鞋的她满面春风,活脱脱的一个摩...
    晴空蓝阅读 257评论 1 1