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 相关文章推荐
Json对象替换字符串占位符实现代码
Nov 17 Javascript
jquery ajax 同步异步的执行 return值不能取得的解决方案
Jan 08 Javascript
一个奇葩的最短的 IE 版本判断JS脚本
May 28 Javascript
Node.js入门教程:在windows和Linux上安装配置Node.js图文教程
Aug 14 Javascript
推荐 21 款优秀的高性能 Node.js 开发框架
Aug 18 Javascript
JavaScript获取数组最小值和最大值的方法
Jun 09 Javascript
在JavaScript中call()与apply()区别
Jan 22 Javascript
AngularJS动态绑定ng-options的ng-model实例代码
Jun 21 Javascript
不使用JavaScript实现菜单的打开和关闭效果demo
May 01 Javascript
javascript中的this作用域详解
Jul 15 Javascript
vue实现拖拽的简单案例 不超出可视区域
Jul 25 Javascript
Vue如何基于vue-i18n实现多国语言兼容
Jul 17 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基础知识:类与对象(4) 范围解析操作符(::)
2006/12/13 PHP
PHP调试的强悍利器之PHPDBG
2016/02/22 PHP
php opendir()列出目录下所有文件的实例代码
2016/10/02 PHP
基于php(Thinkphp)+jquery 实现ajax多选反选不选删除数据功能
2017/02/24 PHP
解决PHP上传非标准格式的图片pjpeg失败的方法
2017/03/12 PHP
小议Function.apply()之二------利用Apply的参数数组化来提高 JavaScript程序性能
2006/11/30 Javascript
打开超链需要“确认”对话框的方法
2007/03/08 Javascript
基于jquery的checkbox下拉框插件代码
2010/06/25 Javascript
JavaScript加入收藏夹功能(兼容IE、firefox、chrome)
2014/05/05 Javascript
用javascript将数据导入Excel示例代码
2014/09/10 Javascript
深入理解jQuery之事件移除
2016/06/02 Javascript
ES5学习教程之Array对象
2017/04/01 Javascript
vue v-model表单控件绑定详解
2017/05/17 Javascript
关于jQuery库冲突的完美解决办法
2017/05/20 jQuery
详解在React里使用&quot;Vuex&quot;
2018/04/02 Javascript
vue 点击展开显示更多(点击收起部分隐藏)
2019/04/09 Javascript
微信小程序实现锚点跳转
2020/11/23 Javascript
[01:07:53]RNG vs VG 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
简析Python的闭包和装饰器
2016/02/26 Python
python检查URL是否正常访问的小技巧
2017/02/25 Python
简单实现python进度条脚本
2017/12/18 Python
python爬虫正则表达式之处理换行符
2018/06/08 Python
python编写计算器功能
2019/10/25 Python
pytorch实现保证每次运行使用的随机数都相同
2020/02/20 Python
keras .h5转移动端的.tflite文件实现方式
2020/05/25 Python
css3 media 响应式布局的简单实例
2016/08/03 HTML / CSS
Mountain Warehouse澳大利亚官网:欧洲家庭户外品牌倡导者
2016/11/20 全球购物
澳大利亚在线家具、灯饰和家居装饰店:LivingStyles
2018/11/20 全球购物
类成员函数的重载、覆盖和隐藏区别
2016/01/27 面试题
科室工作的个人自我评价
2013/10/30 职场文书
数控机床专业自荐信
2014/05/19 职场文书
绿色环保标语
2014/06/12 职场文书
关于保护环境的建议书
2014/08/26 职场文书
银行求职信模板
2015/03/20 职场文书
2015年度合同管理工作总结
2015/05/22 职场文书
TensorFlow的自动求导原理分析
2021/05/26 Python