前端猫人
2015-07-27 10:06
老师,您好,能提供一些move.js的源码么~~~~~
function getStyle(obj,attr){
if(obj.currentStyle){
return obj.currentStyle[attr];
}else{
return getComputedStyle(obj,false)[attr];
}
}
function move(obj,json,fn){
clearInterval(obj.timer);
obj.timer=setInterval(function(){
var flag=true;
for(var attr in json){
var par=0;
if(attr=='opacity'){
var par=Math.round(parseFloat(getStyle(obj,attr))*100);
}else{
var par=parseInt(getStyle(obj,attr));
}
var speed=(json[attr]-par)/20;
speed=speed>0?Math.ceil(speed):Math.floor(speed);
if(par!=json[attr]){
flag=false;
}
if(attr=='opacity'){
obj.style.filter='alpha(opacity:'+(par+speed)+')';
obj.style.opacity=(par+speed)/100;
}else{
obj.style[attr]=par+speed+"px";
}
}
if(flag){
clearInterval(obj.timer);
if(fn){ //检测是否有回调函数,有就执行
fn();
}
}
},15);
}
自己尝试着封装下,哪里不会再把视频看看,很容易就自己做出来了。着东西不动手看了也用处不大。
JS动画效果
113925 学习 · 1443 问题
相似问题