js完美运动框架,想得到的效果基本能做到
2014-08-08 17:53
645 查看
<!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <title>完美运动框架</title> <style type="text/css"> div{width: 200px;height: 100px;filter:alpha(opacity=100);opacity: 1;background: #808800;} </style> </head> <body> <div></div> <script type="text/javascript"> window.onload=function (){ var oDiv=document.getElementsByTagName('div')[0]; oDiv.onmouseover=function() { startMove(this,{width:400,height:200}); } oDiv.onmouseout=function(){ startMove(this,{width:200,height:100}); } } function getCurrentStyle(obj,name){ if(obj.currentStyle){ return obj.currentStyle[name]; }else{ return getComputedStyle(obj,null)[name]; } } function startMove(obj,json,fnEnd){ clearInterval(obj.timer); obj.timer=setInterval(function(){ var flag=true; for(var attr in json) { var cur=0; if(attr=='opacity') { cur=Math.round(parseFloat(getCurrentStyle(obj,attr))*100); } else{ cur=parseFloat(getCurrentStyle(obj,attr)); } var speed=(json[attr]-cur)/6; speed=speed>0?Math.ceil(speed):Math.floor(speed); if(cur!=json[attr]) flag=false; if(attr=='opacity'){ obj.style.filter="alpha(opacity:"+(cur+speed)+')'; obj.style.opacity=(cur+speed)/100; }else{ obj.style[attr]=cur+speed+'px'; } if(flag){ clearInterval(obj.timer); if(fnEnd) fnEnd(); } } },30); } </script> </body> </html>
相关文章推荐
- js运动-完美运动框架
- JS完美运动框架详解——原理分析及demo
- JS中匀速运动的基本框架
- JS完美运动框架详解——原理分析及demo
- js运动框架_包括图片的淡入淡出效果
- 2015.8.2js-19(完美运动框架)
- JS完美运动框架的封装过程
- js运动技术--完美运动框架
- js完美运动框架最终版
- 运动框架改进之完美运动框架 -纯js
- js运动框架----3.缩放效果
- 完美运动框架【js】
- JS实现运动的动画效果 框架
- JS完美运动框架
- 完美运动框架(js)
- JS完美运动框架
- JS中的完美运动框架
- JS基础之运动框架,能实现常用动画效果
- js完美多物体运动框架(缓冲运动)
- 原生Js完美运动框架(缓冲运动和弹性运动)