javascript匀速运动实现方法分析

 更新时间:2016年01月08日 11:39:25   作者:lostyu  
这篇文章主要介绍了javascript匀速运动实现方法,结合实例形式分析了JavaScript匀速运动的具体实现步骤与相关注意事项,需要的朋友可以参考下

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

匀速运动步骤:

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

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

运行效果截图如下:

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 对象、函数和继承

    JavaScript 对象、函数和继承

    JavaScript可以说是一个基于对象的编程语言,为什么说是基于对象而不是面向对象,因为JavaScript自身只实现了封装,而没有实现继承和多态。
    2009-07-07
  • javascript实现图片轮换动作方法

    javascript实现图片轮换动作方法

    这篇文章主要介绍了javascript实现图片轮换动作方法,文章通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • JavaScript中递归实现的方法及其区别

    JavaScript中递归实现的方法及其区别

    递归函数是在通过名字调用自身的情况下构成的。下面通过本文给大家分享JavaScript中递归实现的方法及其区别,感兴趣的朋友一起看看吧
    2017-09-09
  • Bootstrap笔记—折叠实例代码

    Bootstrap笔记—折叠实例代码

    本篇文章主要介绍了Bootstrap笔记—折叠实例代码,详细的介绍了折叠效果实例,包括一组多组等,非常具有实用价值,需要的朋友可以参考下。
    2017-03-03
  • 一些超实用的JS常用算法详解(推荐!)

    一些超实用的JS常用算法详解(推荐!)

    算法是计算机算法即计算机能够执行的算法,只有明确了算法后,才能使应用程序实现某些功能,所以通常人们会将算法称为程序的灵魂,下面这篇文章主要给大家分享介绍了一些超实用的JS常用算法的相关资料,需要的朋友可以参考下
    2022-10-10
  • JavaScript继承基础讲解(原型链、借用构造函数、混合模式、原型式继承、寄生式继承、寄生组合式继承)

    JavaScript继承基础讲解(原型链、借用构造函数、混合模式、原型式继承、寄生式继承、寄生组合式继承)

    这篇文章主要介绍了JavaScript继承基础讲解,原型链、借用构造函数、混合模式、原型式继承、寄生式继承、寄生组合式继承,需要的朋友可以参考下
    2014-08-08
  • js 多层叠的TAB选项卡

    js 多层叠的TAB选项卡

    一个多层叠的TAB选项卡,自适应宽度(自行更改nonstop的width测试效果)。
    2010-01-01
  • 微信小程序npm引入vant-weapp的踩坑记录

    微信小程序npm引入vant-weapp的踩坑记录

    这篇文章主要给大家介绍了关于微信小程序npm引入vant-weapp的踩坑记录,文中通过示例代码介绍的非常详细,对大家学习或者使用微信小程序具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-08-08
  • threejs 模型添加文字的多种方式汇总

    threejs 模型添加文字的多种方式汇总

    这篇文章主要介绍了threejs 模型添加文字的几种方式,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-03-03
  • 使用UniApp框架来阻止事件冒泡

    使用UniApp框架来阻止事件冒泡

    在开发移动应用程序时,我们经常需要处理用户交互事件,然而,有时候这些事件会冒泡,导致意外的行为和不良用户体验,在本文中,我们将探讨如何使用UniApp框架来阻止事件冒泡,并提供一些示例代码来帮助您理解如何实现这一功能,需要的朋友可以参考下
    2023-11-11

最新评论