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 相关文章推荐
$.ajax返回的JSON无法执行success的解决方法
Sep 09 Javascript
JavaScript操作Cookie详解
Feb 28 Javascript
JavaScript从0开始构思表情插件
Jul 26 Javascript
基于jQuery的checkbox全选问题分析
Nov 18 Javascript
jQuery层级选择器_动力节点节点Java学院整理
Jul 04 jQuery
使用JS动态显示文本
Sep 09 Javascript
Angular2使用vscode断点调试ts文件的方法
Dec 13 Javascript
5 种JavaScript编码规范
Jan 30 Javascript
jquery点击回车键实现登录效果并默认焦点的方法
Mar 09 jQuery
angular6的响应式表单的实现
Oct 10 Javascript
详解vue使用插槽分发内容slot的用法
Mar 28 Javascript
vue中用 async/await 来处理异步操作
Jul 18 Javascript
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
MySQL连接数超过限制的解决方法
2011/07/17 PHP
基于PHP读取TXT文件向数据库导入海量数据的方法
2013/04/23 PHP
使用配置类定义Codeigniter全局变量
2014/06/12 PHP
SCP远程VPS快速搬家和WDCP升级php5.3安装memcached和eaccelerator教程
2017/07/27 PHP
jQuery的实现原理的模拟代码 -4 重要的扩展函数 extend
2010/08/03 Javascript
基于JavaScript实现继承机制之调用call()与apply()的方法详解
2013/05/07 Javascript
alert中断settimeout计时功能
2013/07/26 Javascript
Jquery getJSON方法详细分析
2013/12/26 Javascript
JavaScript中的数值范围介绍
2014/12/29 Javascript
jQuery仿淘宝网产品品牌隐藏与显示效果
2015/09/01 Javascript
关于在Servelet中如何获取当前时间的操作方法
2016/06/28 Javascript
AngularJS基础 ng-mousemove 指令简单示例
2016/08/02 Javascript
vue2.0开发实践总结之疑难篇
2016/12/07 Javascript
jQuery扇形定时器插件pietimer使用方法详解
2017/07/18 jQuery
vue页面切换到滚动页面显示顶部的实例
2018/03/13 Javascript
基于vue展开收起动画的示例代码
2018/07/05 Javascript
js实现树形数据转成扁平数据的方法示例
2020/02/27 Javascript
JS端基于download.js实现图片、视频时直接下载而不是打开预览
2020/05/09 Javascript
python定时器使用示例分享
2014/02/16 Python
Python实现的网页截图功能【PyQt4与selenium组件】
2018/07/12 Python
python添加模块搜索路径和包的导入方法
2019/01/19 Python
Python3实现的反转单链表算法示例
2019/03/08 Python
很酷的python表白工具 你喜欢我吗
2019/04/11 Python
Python Numpy数组扩展repeat和tile使用实例解析
2019/12/09 Python
使用Python脚本从文件读取数据代码实例
2020/01/19 Python
Python CategoricalDtype自定义排序实现原理解析
2020/09/11 Python
详解CSS3中使用gradient实现渐变效果的方法
2015/08/18 HTML / CSS
比利时香水网上商店:NOTINO
2018/03/28 全球购物
亚洲在线旅行门户网站:Expedia.com.hk(智游网)
2020/04/14 全球购物
后进生转化工作制度
2014/01/17 职场文书
三项教育活动实施方案
2014/03/30 职场文书
个人委托书范本
2014/04/02 职场文书
党员四风自我剖析材料
2014/10/07 职场文书
上课说话检讨书500字
2014/11/01 职场文书
乡镇党建工作总结2015
2015/05/19 职场文书
Python排序算法之插入排序及其优化方案详解
2021/06/11 Python