JavaScript运动减速效果实例分析


Posted in Javascript onAugust 04, 2015

本文实例讲述了JavaScript运动减速效果。分享给大家供大家参考。具体如下:

这段代码可帮助利用JS从事游戏编程的朋友,它主要实现一种运行减速缓冲的效果,代码精简,很不错。

运行效果如下图所示:

JavaScript运动减速效果实例分析

具体代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>JavaScript运动减速效果</title>
</head>
<body>
<div style=" position:relative; border:1px solid #000000; width:550px; height:50px;">
<div id="aa" style="width:50px; height:50px; background:#930; position:absolute;"></div>
</div>
<div id="x"></div>
<div style=" position:relative; border:1px solid #000000; width:550px; height:50px;">
<div id="bb" style="width:50px; height:50px; background:#0000FF; position:absolute;"></div>
</div>
<div id="y"></div>
<script>
var $ = function (id) {
 return "string" == typeof id ? document.getElementById(id) : id;
};
var ss = 0;
var s = 500;
var tt = 300;
var a = 2*s/(tt*tt);
var o = $("aa");
var i = 0;
var t = 0;
function run(){
 t++;
 i = parseInt((a*tt)*t - .5 * a * (t*t));
 if(i>=s){ o.style.left = ss + s + "px"; return; }
 o.style.left = ss + i + "px";
 $("x").innerHTML+=i+",";
 setTimeout(run, 10);
}
run();
var s2 = 500;
var o2 = $("bb");
var i2 = 0;
function run2(){
 var s = (s2-i2)/100;
 if(s>0 && s < 1){ s=1; };
 if(s==0 || i2 + s>=s2){ o2.style.left = ss + s2 + "px"; return; }
 o2.style.left = ss + i2 + s + "px";
 i2=i2 + s;
 $("y").innerHTML+=parseInt(i2 + s)+",";
 setTimeout(run2, 10);
}
run2();
</script>
</body>
</html>

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

Javascript 相关文章推荐
Javascript学习笔记之 函数篇(二) : this 的工作机制
Jun 24 Javascript
jquery制作属于自己的select自定义样式
Nov 23 Javascript
AngularJS ng-bind-html 指令详解及实例代码
Jul 30 Javascript
JS简单获取当前年月日星期的方法示例
Feb 07 Javascript
jquery mobile实现可折叠的导航按钮
Mar 11 Javascript
JS正则替换去空格的方法
Mar 24 Javascript
AngularJS 单选框及多选框的双向动态绑定
Apr 20 Javascript
关于jquery中attr()和prop()方法的区别
May 28 jQuery
Vue组件创建和传值的方法
Aug 17 Javascript
vue项目中使用Svg的方法
Oct 24 Javascript
JavaScript实现简单轮播图效果
Dec 01 Javascript
使用js获取身份证年龄的示例代码
Dec 11 Javascript
JavaScript仿静态分页实现方法
Aug 04 #Javascript
JavaScript实现选择框按比例拖拉缩放的方法
Aug 04 #Javascript
Javascript实现可旋转的圆圈实例代码
Aug 04 #Javascript
JavaScript数组各种常见用法实例分析
Aug 04 #Javascript
基于Jquery实现表单验证
Jul 20 #Javascript
javascript+HTML5的canvas实现七夕情人节3D玫瑰花效果代码
Aug 04 #Javascript
jq实现左侧显示图片右侧文字滑动切换效果
Aug 04 #Javascript
You might like
不错的一篇面向对象的PHP开发模式(简写版)
2007/03/15 PHP
PHP 自定义错误处理函数的使用详解
2013/05/10 PHP
php Session存储到Redis的方法
2013/11/04 PHP
php数组合并array_merge()函数使用注意事项
2014/06/19 PHP
PHP中比较时间大小实例
2014/08/21 PHP
php发送http请求的常用方法分析
2016/11/08 PHP
PHP插件PHPMailer发送邮件功能
2017/02/28 PHP
laravel 修改记住我功能的cookie保存时间的方法
2019/10/14 PHP
YII2框架中behavior行为的理解与使用方法示例
2020/03/13 PHP
Jquery 基础学习笔记之文档处理
2009/05/29 Javascript
JavaScript 监听textarea中按键事件
2009/10/08 Javascript
用js正确判断用户名cookie是否存在的方法
2014/01/28 Javascript
IE6浏览器中window.location.href无效的解决方法
2014/11/20 Javascript
详解JavaScript中的客户端消息框架设计原理
2015/06/24 Javascript
自己封装的一个简单的倒计时功能实例
2016/11/23 Javascript
BootStrap 获得轮播中的索引和当前活动的焦点对象
2017/05/11 Javascript
二维码图片生成器QRCode.js简单介绍
2017/08/18 Javascript
Vue.js 利用v-for中的index值实现隔行变色
2018/08/01 Javascript
脚手架vue-cli工程webpack的基本用法详解
2018/09/29 Javascript
vue安装和使用scss及sass与scss的区别详解
2018/10/15 Javascript
layui使用templet格式化表格数据的方法
2019/09/16 Javascript
Echarts地图添加引导线效果(labelLine)
2019/09/30 Javascript
layui点击按钮页面会自动刷新的解决方案
2019/10/25 Javascript
详解三种方式在React中解决绑定this的作用域问题并传参
2020/08/18 Javascript
Python探索之ModelForm代码详解
2017/10/26 Python
使用python Fabric动态修改远程机器hosts的方法
2018/10/26 Python
python两种获取剪贴板内容的方法
2020/11/06 Python
用React加CSS3实现微信拆红包动画效果
2017/03/13 HTML / CSS
美国手工艺品市场的领导者:Annie’s
2019/04/04 全球购物
介绍一下Python下range()函数的用法
2013/11/07 面试题
客服文员岗位职责
2013/11/29 职场文书
花店创业计划书范文
2014/02/07 职场文书
技术股份合作协议书
2014/10/05 职场文书
党员转正申请报告
2015/05/15 职场文书
2019入党申请书格式
2019/06/25 职场文书
Python机器学习三大件之一numpy
2021/05/10 Python