startMove运动框架
16lz
2022-01-22
实例
functiongetStyle(obj,attr,fn){if(obj.currentStyle){returnobj.currentStyle[attr];//ie}else{returngetComputedStyle(obj,false)[attr];//ff}}functionstartMove(obj,json,fn){clearInterval(obj.timer);//开定时器之前先关掉原有的计时器obj.timer=setInterval(function(){varbStop=true;//这一次运动就结束了――所有的值都到达了for(varattrinjson){//1.取当前的值variCur=0;if(attr=='opacity'){iCur=parseInt(parseFloat(getStyle(obj,attr))*100);}else{iCur=parseInt(getStyle(obj,attr));}//2.算速度variSpeed=(json[attr]-iCur)/8;iSpeed=iSpeed>0?Math.ceil(iSpeed):Math.floor(iSpeed);//3.检测停止if(iCur!=json[attr]){bStop=false;}if(attr=='opacity'){obj.style.filter='alpha(opacity:'+(iCur+iSpeed)+')';obj.style.opacity=(iCur+iSpeed)/100;}else{obj.style[attr]=iCur+iSpeed+'px';}}if(bStop){clearInterval(obj.timer);if(fn){fn();}}},30)}
运行实例 »
点击 "运行实例" 按钮查看在线实例
使用方式:
startMove('元素', 对象属性)
例:startMove('#id',{height: 100})
更多相关文章
- 使用jni接口完成android本地程序的运行--具体的操作
- Android(安卓)6.x 新的运行时权限
- Android(安卓)中SQList用法详解(增删查改)
- 想抢先体验Android操作系统的魅力吗?那就使用Android(安卓)LiveCD
- Android工程下运行main方法的配置方法
- Android中SQLite应用详解
- 怎样用 C/C++ 开发一个原生程序运行在 Android(安卓)下而不用 AD
- MySQL触发器的使用场景及方法实例
- 实例讲解MySQL 慢查询