js 小球运动

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>js 小球运动效果</title>
    </head>
    <style>
        *{padding: 0;margin: 0;}
        .ball{
            width: 50px;
            height: 50px;
            border-radius: 50%;
            margin-top: 10px;
        }
        .ball1{background: red;}
        .ball2{background: yellow;}
        .ball3{background: green;}
    </style>
    <body>
        <div class="ball ball1"style="margin-left: 10px;"></div>
        <div class="ball ball2" style="margin-left: 10px;"></div>
        <div class="ball ball3"style="margin-left: 10px;"></div>
    </body>
    <script>
    window.onload = function(){ 
        var ball1 = document.querySelector('.ball1');
        var ball2 = document.querySelector('.ball2');
        var ball3 = document.querySelector('.ball3');
        function animate1(ball,distance,cb){
            setTimeout(function(){
                var marginLeft =  parseInt(ball.style.marginLeft);  //转换为数字
                if(marginLeft == distance){
                    cb&&cb();
                }else{
                    if(marginLeft<distance){
                        marginLeft++;
                    }else{
                        marginLeft--;
                    }
                    ball.style.marginLeft = marginLeft+'px';  //转回来
                    animate1(ball,distance,cb);   
                }
            },13);
        }

        animate1(ball1,800,function(){
            animate1(ball2,600,function(){
                animate1(ball3,500,function(){
                    animate1(ball3,300,function(){
                        animate1(ball2,300,function(){
                            animate1(ball1,300,function(){

                            });
                        });
                    });
                });
            });
        });
    }
    </script>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值