javascript匀速运动实现方法分析


Posted in Javascript onJanuary 08, 2016

本文实例讲述了javascript匀速运动实现方法。分享给大家供大家参考,具体如下:

匀速运动步骤:

1. 清除定时器
2. 开启定时器
3. 运动是否完成:a、运动完成,清除定时器;b、运动未完成继续

匀速运动停止条件:距离足够近  Math.abs(当然距离-目标距离) < 最小运动距离

运行效果截图如下:

javascript匀速运动实现方法分析

div的匀速运动(简单运动)示例:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>JavaScript匀速运动</title>
<style>
#div1{ width:100px; height:100px; background:red; position:absolute; top:50px; left:500px;}
span{ width:1px; height:300px; background:black; position:absolute; left:300px; top:0; display:block;}
</style>
<script>
window.onload = function()
{
 var oBtn = document.getElementById('btn1');
 var oDiv = document.getElementById('div1');
 oBtn.onclick = function()
 {
  startMove(oDiv, 300);
 };
};
var timer = null;
function startMove(obj, iTarget)
{
 clearInterval(timer);
 timer = setInterval(function(){
  var iSpeed = 0;
  if(obj.offsetLeft < iTarget)
  {
   iSpeed = 7;
  }
  else
  {
   iSpeed = -7;
  }
  if( Math.abs( obj.offsetLeft - iTarget ) < 7 )
  {
   clearInterval(timer);
   obj.style.left = iTarget + 'px';
  }
  else
  {
   obj.style.left = obj.offsetLeft + iSpeed + 'px';
  }
 }, 30);
}
</script>
</head>
<body>
<button id="btn1">移动</button>
<div id="div1"></div>
<span></span>
</body>
</html>

更多关于JavaScript运动效果相关内容可查看本站专题:《JavaScript运动效果与技巧汇总》

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

Javascript 相关文章推荐
JQuery jsonp 使用示例代码
Aug 12 Javascript
csdn 博客中实现运行代码功能实现
Aug 29 Javascript
JavaScript 在网页上单击鼠标的地方显示层及关闭层
Dec 30 Javascript
JavaScript省市联动实现代码
Feb 15 Javascript
jquery选择器需要注意的问题
Nov 26 Javascript
jQuery+AJAX实现遮罩层登录验证界面(附源码)
Sep 13 Javascript
AngularJS 自定义指令详解及示例代码
Aug 17 Javascript
js判断是否为空和typeof的用法(详解)
Oct 07 Javascript
bootstrapValidator自定验证方法写法
Dec 01 Javascript
JavaScript的Object.defineProperty详解
Jul 09 Javascript
vue组件之间通信方式实例总结【8种方式】
Feb 22 Javascript
js中调用微信的扫描二维码功能的实现代码
Apr 11 Javascript
js如何改变文章的字体大小
Jan 08 #Javascript
JavaScript缓冲运动实现方法(2则示例)
Jan 08 #Javascript
jQuery抛物线运动实现方法(附完整demo源码下载)
Jan 08 #Javascript
基于javascript实现右下角浮动广告效果
Jan 08 #Javascript
jQuery数据类型小结(14个)
Jan 08 #Javascript
JS运动相关知识点小结(附弹性运动示例)
Jan 08 #Javascript
基于jquery实现图片上传本地预览功能
Jan 08 #Javascript
You might like
使用 eAccelerator加速PHP代码的目的
2007/03/16 PHP
php解决抢购秒杀抽奖等大流量并发入库导致的库存负数的问题
2014/06/19 PHP
Symfony模板的快捷变量用法实例
2016/03/17 PHP
POST一个JSON格式的数据给Restful服务实例详解
2017/04/07 PHP
用JS剩余字数计算的代码
2008/07/03 Javascript
JSQL 基于客户端的成绩统计实现方法
2010/05/05 Javascript
关于js中window.location.href,location.href,parent.location.href,top.location.href的用法与区别
2010/10/18 Javascript
js函数模拟显示桌面.scf程序示例
2014/04/20 Javascript
Javascript实现的常用算法(如冒泡、快速、鸽巢、奇偶等)
2014/04/29 Javascript
JS实现的左侧竖向滑动菜单效果代码
2015/10/19 Javascript
AngularJS中的指令全面解析(必看)
2016/05/20 Javascript
如何处理JSON中的特殊字符
2016/11/30 Javascript
bootstrap fileinput组件整合Springmvc上传图片到本地磁盘
2017/05/11 Javascript
浅谈NodeJs之数据库异常处理
2017/10/25 NodeJs
浅谈webpack打包生成的bundle.js文件过大的问题
2018/02/22 Javascript
vue forEach循环数组拿到自己想要的数据方法
2018/09/21 Javascript
vue-cli项目使用mock数据的方法(借助express)
2019/04/15 Javascript
微信小程序实现分享商品海报功能
2019/09/30 Javascript
vue data有值,但是页面{{}} 取不到值的解决
2020/11/09 Javascript
[36:13]Mineski vs iG 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
python zip文件 压缩
2008/12/24 Python
老生常谈python的私有公有属性(必看篇)
2017/06/09 Python
浅谈Pandas:Series和DataFrame间的算术元素
2018/12/22 Python
详解Python3之数据指纹MD5校验与对比
2019/06/11 Python
VS2019+python3.7+opencv4.1+tensorflow1.13配置详解
2020/04/16 Python
Python实现GIF图倒放
2020/07/16 Python
使用django自带的user做外键的方法
2020/11/30 Python
带有css3动画效果的兼容多浏览器简单导航条示例
2014/01/26 HTML / CSS
2014年后勤管理工作总结
2014/12/01 职场文书
拾金不昧表扬稿大全
2015/05/05 职场文书
火烧圆明园的观后感
2015/06/03 职场文书
西柏坡观后感
2015/06/08 职场文书
2019个人工作态度自我评价
2019/04/24 职场文书
2019新员工试用期转正工作总结范文
2019/08/21 职场文书
教你使用Python pypinyin库实现汉字转拼音
2021/05/27 Python
windows server 2012安装FTP并配置被动模式指定开放端口
2022/06/10 Servers