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 相关文章推荐
根据分辨率不同,调用不同的css文件
Aug 25 Javascript
jquery.blockUI.js上传滚动等待效果实现思路及代码
Mar 18 Javascript
7款吸引人眼球的jQuery/CSS3特效实例分享
Apr 25 Javascript
Jquery插件实现点击获取验证码后60秒内禁止重新获取
Mar 13 Javascript
JQuery之proxy实现绑定代理方法
Aug 01 Javascript
JS+jQuery实现注册信息的验证功能
Sep 26 jQuery
layui获取多选框中的值方法
Aug 15 Javascript
vue中node_modules中第三方模块的修改使用详解
May 31 Javascript
js简单遍历获取对象中的属性值的方法示例
Jun 19 Javascript
JavaScript ECMA-262-3 深入解析(二):变量对象实例详解
Apr 25 Javascript
解决VUE自定义拖拽指令时 onmouseup 与 click事件冲突问题
Jul 24 Javascript
webpack介绍使用配置教程详解webpack介绍和使用
Jun 25 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
PHP 身份证号验证函数
2009/05/07 PHP
PHP中return 和 exit 、break和contiue 区别与用法
2012/04/09 PHP
PHP实现的多彩标签效果代码分享
2014/08/21 PHP
Zend Guard使用指南及问题处理
2015/01/07 PHP
PHP CURL 多线程操作代码实例
2015/05/13 PHP
关于php微信订阅号开发之token验证后自动发送消息给订阅号但是没有消息返回的问题
2015/12/21 PHP
深入理解PHP中的empty和isset函数
2016/05/26 PHP
php自定义截取中文字符串-utf8版
2017/02/27 PHP
使用jQuery判断IE浏览器版本的代码
2014/06/14 Javascript
javascript获取flash版本号的方法
2014/11/20 Javascript
浅析jQuery EasyUI中的tree使用指南
2014/12/18 Javascript
jQuery中:gt选择器用法实例
2014/12/29 Javascript
js 实现获取name 相同的页面元素并循环遍历的方法
2017/02/14 Javascript
get  post jsonp三种数据交互形式实例详解
2017/08/25 Javascript
JavaScript根据json生成html表格的示例代码
2018/10/24 Javascript
微信小程序实现星星评价效果
2018/11/02 Javascript
js单线程的本质 Event Loop解析
2019/10/29 Javascript
JS实现iframe中子父页面跨域通讯的方法分析
2020/03/10 Javascript
Chrome插件开发系列一:弹窗终结者开发实战
2020/10/02 Javascript
angular共享依赖的解决方案分享
2020/10/15 Javascript
python3之微信文章爬虫实例讲解
2017/07/12 Python
python3.4控制用户输入与输出的方法
2018/10/17 Python
Python设计模式之观察者模式原理与用法详解
2019/01/16 Python
PyTorch之图像和Tensor填充的实例
2019/08/18 Python
基于h5py的使用及数据封装代码
2019/12/26 Python
Python urlopen()和urlretrieve()用法解析
2020/01/07 Python
python实现的Iou与Giou代码
2020/01/18 Python
python代码实现图书管理系统
2020/11/30 Python
Gweniss格温妮丝女包官网:英国纯手工制造潮流包包品牌
2018/02/07 全球购物
印度在线杂货店:bigbasket
2018/08/23 全球购物
美国领先的男士和女士内衣购物网站:Freshpair
2019/02/25 全球购物
ajax是什么及其工作原理
2012/02/08 面试题
学生发电厂实习自我鉴定
2013/09/22 职场文书
java设计模式--原型模式详解
2021/07/21 Java/Android
Python字典的基础操作
2021/11/01 Python
Django框架中模型的用法
2022/06/10 Python