js 弹性运动

复制代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>弹性运动</title>
    <style>
        #div1
        {
            width:100px;
            height:100px;
            background:red;
            position:absolute;
        }
    </style>
    
    <script type="text/javascript">
        window.onload = function(){
            var oBtn = document.getElementById("btn");
            
            var oDiv = document.getElementById("div1");
            
            oBtn.onclick = function(){
               move2(oDiv,300);
            }
        
        }
        
        
        var timer = null;
        var speed = 0;
        
        function move(){
            
            clearInterval(timer);
            timer = setInterval(function(){
                var oDiv = document.getElementById("div1");
                
                speed+=(300-oDiv.offsetLeft)/5;
                
                speed*= 0.7;
                
                oDiv.style.left = oDiv.offsetLeft + speed +'px';
                
                
            },30);
        }
        
        var iSpeed = 0;
        function move2(obj,target)
        {
            clearInterval(obj.timer);
            obj.timer = setInterval(function(){
                
                iSpeed +=(target-obj.offsetLeft)/5;
                iSpeed *=0.7;
                
                if(Math.abs(iSpeed)<1 && Math.abs(target-obj.offsetLeft)<1)
                {
                    clearInterval(obj.timer);
                }
                else
                {
                    obj.style.left = obj.offsetLeft + iSpeed +'px';
                }
            },30);
        }
    </script>
</head>
<body>
   <input type="button" id="btn" value="运动" />
   <div id="div1">
    </div>
    
    <div style="width:1px;height:300px;background:black;top:0px;left:300px;position:absolute;"></div>

</body>
</html>
复制代码

 

posted @   大空白纸  阅读(262)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示