JavaScript弹簧振子超简洁版 完全符合能量守恒,胡克定理


Posted in Javascript onOctober 25, 2009

上一版用的是物理思想,这次用的是数学思想,如果您下载过第一版的代码就能明显感到数学的强大!!!!!
这里是弹簧的JS代码:

<script type="text/javascript"> 
/////////////////this spring begin///////////////////// 
var X=0.1//X轴增量 
var T=0;//X轴初位置 
var M=200; //原始振幅倍数 
var A=0.7;//振幅倍数衰减数 
var D='R';//运动方向 
var O=0;//元素 
var L=0;//位置 
var TI=30; 
var S=false; 
var HR=false; function R(){ 
HR=true; 
if(S) 
{ 
return; 
} 
O.style.left= L+(Math.sin(T))*M+"px";//获取弹簧运动速度 
T=T+X;//X轴增长 
M-=A;//单位时间衰减 
if(M<=0)//振幅为零 
{ 
S=true; 
return;//退出 
} 
setTimeout("R()",TI);//回调 
} 
///////////////////this spring over/////////////////////////// 
function I() 
{ 
if(HR){ 
return; 
} 
S=false; 
O=document.getElementById("div"); 
X=parseFloat(document.getElementById("X").value); 
M=parseFloat(document.getElementById("M").value); 
A=parseFloat(document.getElementById("A").value); 
TI=parseFloat(document.getElementById("TI").value); 
L=document.getElementById("div").offsetLeft; 
R(); 
} 
function TS() 
{ 
S=true; 
} 
function B() 
{ 
if(S) 
{ 
T=0 
HR=false; 
S=false; 
X=parseFloat(document.getElementById("X").value); 
M=parseFloat(document.getElementById("M").value); 
A=parseFloat(document.getElementById("A").value); 
document.getElementById("div").style.left=L+"px"; 
} 
} 
</script>

这里是该网页中的HTML(没啥用,为了演示)
<div id="P" style="width:500px;height:400px;"> 
<input style="width:50px" type="text" id="X" value="0.1" />X轴增量<br/><input style="width:50px" type="text" id="M" value="200" />原始振幅倍数<br/> 
<input style="width:50px" type="text" id="A" value="0.7" />振幅倍数衰减数<br/> 
<input style="width:50px" type="text" id="TI" value="30" />运行时间间隔(毫秒)<br/> 
<input style="width:80px" type="button" onclick="TS()" value="停止"/>停止后请从新激活<br/><input style="width:80px" type="button" onclick="B()" value="从新激活"/> 
</div><div style=" position:absolute;"><div id="div" onclick="I()" value="设置完后点我!" style="position:absolute; top:-264px; left:211px; width:50px; height:50px; background-color:#FF0;"></div></div>

这比上次的代码大有长进!100%原创!
转载http://www.cnblogs.com/NONE/
Javascript 相关文章推荐
js中将多个语句写成一个语句的两种方法小结
Dec 08 Javascript
web前端开发也需要日志
Dec 09 Javascript
jquery 实现checkbox全选,反选,全不选等功能代码(奇数)
Oct 24 Javascript
jquery复选框全选/取消示例
Dec 30 Javascript
javascript快速排序算法详解
Sep 17 Javascript
推荐阅读的js快速判断IE浏览器(兼容IE10与IE11)
Dec 13 Javascript
Vue.js实战之利用vue-router实现跳转页面
Apr 01 Javascript
移动设备手势事件库Touch.js使用详解
Aug 18 Javascript
微信小程序实现传参数的几种方法示例
Jan 10 Javascript
微信小程序button组件使用详解
Jan 31 Javascript
Vue 页面状态保持页面间数据传输的一种方法(推荐)
Nov 01 Javascript
jQuery操作元素追加内容示例
Jan 10 jQuery
javascript window对象属性整理
Oct 24 #Javascript
Javascript 模式实例 观察者模式
Oct 24 #Javascript
Jquery 弹出层插件实现代码
Oct 24 #Javascript
js 操作符实例代码
Oct 24 #Javascript
利用JQuery+EasyDrag 实现弹出可拖动的Div,同时向Div传值,然后返回Div选中的值
Oct 24 #Javascript
JS window.opener返回父页面的应用
Oct 24 #Javascript
JavaScript 动态添加表格行 使用模板、标记
Oct 24 #Javascript
You might like
PHP 创建文件(文件夹)以及目录操作代码
2010/03/04 PHP
php入门学习知识点二 PHP简单的分页过程与原理
2011/07/14 PHP
ThinkPHP的截取字符串函数无法显示省略号的解决方法
2014/06/25 PHP
利用PHPExcel实现Excel文件的写入和读取
2017/04/26 PHP
PHP实现的简单适配器模式示例
2017/06/22 PHP
javascript multibox 全选
2009/03/22 Javascript
人人网javascript面试题 可以提前实现下
2012/01/05 Javascript
鼠标移到div,浮层显示明细,弹出层与div的上边距左边距重合(示例代码)
2013/12/14 Javascript
JavaScript使用concat连接数组的方法
2015/04/06 Javascript
AngularJS 过滤与排序详解及实例代码
2016/09/14 Javascript
js 定位到某个锚点的方法
2016/11/19 Javascript
微信小程序之picker日期和时间选择器
2017/02/09 Javascript
激动人心的 Angular HttpClient的源码解析
2017/07/10 Javascript
利用纯JS实现像素逐渐显示的方法示例
2017/08/14 Javascript
基于js 各种排序方法和sort方法的区别(详解)
2018/01/03 Javascript
使用Vue开发一个实时性时间转换指令
2018/01/17 Javascript
使用 electron 实现类似新版 QQ 的登录界面效果(阴影、背景动画、窗体3D翻转)
2018/10/23 Javascript
基于Web Audio API实现音频可视化效果
2020/06/12 Javascript
[19:14]DOTA2 HEROS教学视频教你分分钟做大人-维萨吉
2014/06/24 DOTA
Python多线程编程(四):使用Lock互斥锁
2015/04/05 Python
浅析python协程相关概念
2018/01/20 Python
django认证系统实现自定义权限管理的方法
2018/07/16 Python
opencv3/C++实现视频背景去除建模(BSM)
2019/12/11 Python
Python RabbitMQ实现简单的进程间通信示例
2020/07/02 Python
python自动化测试三部曲之unittest框架的实现
2020/10/07 Python
Python基于tkinter canvas实现图片裁剪功能
2020/11/05 Python
HTML5开发动态音频图的实现
2020/07/02 HTML / CSS
Puma印度官网:德国运动品牌
2019/10/06 全球购物
Alexandre Birman美国官网:亚历山大·伯曼
2019/10/30 全球购物
C/C++程序员常见面试题一
2012/12/08 面试题
人力资源部培训专员岗位职责
2014/01/02 职场文书
酒店led欢迎词
2014/01/09 职场文书
搞笑创意广告语
2014/03/17 职场文书
小班幼儿评语大全
2014/04/30 职场文书
领导班子四风对照检查材料
2014/09/23 职场文书
2014年教师教学工作总结
2014/11/08 职场文书