js实现缓冲运动效果的方法

 更新时间:2015年04月10日 09:55:05   作者:jingangel   我要评论
这篇文章主要介绍了js实现缓冲运动效果的方法,涉及javascript操作元素运动的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下

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

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

要点:

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

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

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

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

代码:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<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" 
style="margin-top:130px"></textarea>
</body>
</html>

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

相关文章

  • js 省地市级联选择

    js 省地市级联选择

    3级省地市级联菜单,ie/ff 测试通过,支持多个并存,支持事件
    2010-02-02
  • javascript 二维排序表格代码

    javascript 二维排序表格代码

    目前一直在学习WEB前端的知识。下面贴出最近完成的一个可排序表格.
    2010-12-12
  • JS实现网页背景颜色与select框中颜色同时变化的方法

    JS实现网页背景颜色与select框中颜色同时变化的方法

    这篇文章主要介绍了JS实现网页背景颜色与select框中颜色同时变化的方法,实例分析了javascript操作select及css样式的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-02-02
  • JS模拟实现Select效果代码

    JS模拟实现Select效果代码

    这篇文章主要介绍了JS模拟实现Select效果代码,涉及JavaScript基于鼠标点击事件动态操作页面元素实现Select效果的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-09-09
  • JS 自定义函数缺省值的设置方法

    JS 自定义函数缺省值的设置方法

    有时候定义的函数需要设置默认值,因为不带就会出现一些错误,大家可以参考下这里默认值的定义方法。
    2010-05-05
  • 自动最大化窗口的Javascript代码

    自动最大化窗口的Javascript代码

    有时候我们需要在用户进入页面的时候,自动最大化,更好的体验,省去用户点击最大化按钮,很多文章内容网站都加了这个代码
    2013-05-05
  • JavaScript中的依赖注入详解

    JavaScript中的依赖注入详解

    这篇文章主要介绍了JavaScript中的依赖注入详解,本文讲解了requirejs/AMD方法、反射(reflection)方法等内容,需要的朋友可以参考下
    2015-03-03
  • js的正则test,match,exec详细解析

    js的正则test,match,exec详细解析

    本篇文章主要是对js的正则test,match,exec进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助
    2014-01-01
  • 微信小程序实现多个按钮的颜色状态转换

    微信小程序实现多个按钮的颜色状态转换

    这篇文章主要为大家详细介绍了微信小程序实现多个按钮的颜色状态转换,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-02-02
  • 如何利用JSHint减少JavaScript的错误

    如何利用JSHint减少JavaScript的错误

    JSHint是一个社区驱动用来检测JavaScript代码中错误和潜在的问题以及执行团队的编码规范工具。它非常灵活,因此可以很容易地适应您特定的编码规则和你的代码执行环境。JSHint将永远保持开源的方式。
    2016-08-08

最新评论