为了账号安全,请及时绑定邮箱和手机立即绑定

链式调用一定要鼠标移出再移进去才会执行第二个程序 为什么?

function getStyle (obj,attr) {

if(obj.currentStyle){

return obj.currentStyle[attr];

}else{

return getComputedStyle(obj,null)[attr];

}

}


function startMove(obj,json,func){

var flag=true;

clearInterval(obj.timer);

obj.timer=setInterval(function(){

for(var attr in json){

//取当前值

var iCur=0;

if(attr=='opacity')

{

iCur=Math.round(parseFloat(getStyle(obj,attr))*100);

}

else{

iCur=parseInt(getStyle(obj,attr));

}

//算速度

var speed=(json[attr]-iCur)/10;

speed=speed>0?Math.ceil(speed):Math.floor(speed);


//判断移动是否完成

if (iCur!=json[attr]) {

flag=false;

}

if(attr=='opacity'){

obj.style.filter='alpha(opacity:'+(iCur+speed)+')';

obj.style.opacity=(iCur+speed)/100;

}else{

obj.style[attr]=iCur+speed+'px';

}

}

if(flag){

clearInterval(obj.timer);

if(func){

func();

}


}

},50)

}


正在回答

1 回答

将 

var flag=true;

放在 定时器里面, for循环外面

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

链式调用一定要鼠标移出再移进去才会执行第二个程序 为什么?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信