手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >js实现缓冲运动效果的方法
js实现缓冲运动效果的方法
摘要:本文实例讲述了js实现缓冲运动效果的方法。分享给大家供大家参考。具体分析如下:该实例可实现一开始速度很快,然后慢下来,直到停止的效果。要点:...

本文实例讲述了js实现缓冲运动效果的方法。分享给大家供大家参考。具体分析如下:

该实例可实现一开始速度很快,然后慢下来,直到停止的效果。

要点:

var speed = (target-box.offsetLeft)/8;

目标点减去元素的当前位置的值除以8,因为offsetleft的值是一直在变大,所以速度的值也是一直的变小

speed = speed>0?Math.ceil(speed):Math.floor(speed);

正向速度的时候向上取整,反向速度的时候向下取整

代码:

<!DOCTYPE html> <html> <head> <meta charset="gb2312" /> <title>无标题文档</title> <style> <!-- body{margin:0; padding:0; font:12px/1.5 arial;} #box{width:100px; height:100px; position:absolute; background:#06c; left:0;} --> </style> <script> <!-- window.onload = function(){ var box = document.getElementById("box"); var btn = document.getElementById("btn"); var timer=null; btn.onclick = function(){ startrun(300); } function startrun(target){ clearInterval(timer); timer = setInterval(function(){ var speed = (target-box.offsetLeft)/8; speed = speed>0?Math.ceil(speed):Math.floor(speed); if(box.offsetLeft == target){ clearInterval(timer); }else{ box.style.left = box.offsetLeft+speed+"px"; } document.getElementById('abc').innerHTML+=box.offsetLeft+','+speed+'<br>'; },30); } } //--> </script> </head> <body> <input id="btn" type="submit" value="向右运动"> <div id="box"> </div> <br> <textarea id="abc" cols="50" rows="10" ></textarea> </body> </html>

希望本文所述对大家的javascript程序设计有所帮助。

【js实现缓冲运动效果的方法】相关文章:

javascript实现模拟时钟的方法

js+html5操作sqlite数据库的方法

JS+CSS实现的拖动分页效果实例

jQuery实现返回顶部效果的方法

jQuery实现仿腾讯微博滑出效果报告每日天气的方法

jQuery判断指定id的对象是否存在的方法

js实现div层缓慢收缩与展开的方法

jquery实现用户打分评分特效

利用js实现禁止复制文本信息

纯javascript实现四方向文本无缝滚动效果

精品推荐
分类导航