码迷,mamicode.com
首页 > 其他好文 > 详细

想了想,还是把之前的补齐,先放个封装的运动吧

时间:2019-05-29 19:41:22      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:cti   速度   top   逻辑   lse   function   定时器   val   nts   

//获取非行间样式
function getStyle(ele,attr){
return ele.currentStyle ? ele.currentStyle[attr] : getComputedStyle(ele,null)[attr];
}

function move(ele,json,fn){ //json的接收 {width:10900}
//清除定时器
clearInterval(ele.timer);
//开启定时器
ele.timer = setInterval(function(){
var mStop = true;
//遍历json
for(attr in json){
//获取变换的属性的值
var iCur = getStyle(ele,attr);
//判断是否为透明
if(attr == ‘opacity‘){
iCur *= 100;
}else{
iCur = parseInt(iCur);
}
//设置速度
var speed = (json[attr] - iCur) / 8;
//速度取整
speed = speed > 0 ? Math.ceil(speed) : Math.floor(speed);
//判断
if(iCur != json[attr]){
mStop = false;
}
//运动的逻辑
if(attr == ‘opacity‘){
ele.style.opacity = (iCur + speed) / 100;
ele.style.filter = ‘alpha(opacity=‘+(iCur + speed)+‘)‘
}else{
ele.style[attr] = iCur + speed + ‘px‘;
}
}

if(mStop){
clearInterval(ele.timer);
if(fn){
fn();
}
}
},30)
}

想了想,还是把之前的补齐,先放个封装的运动吧

标签:cti   速度   top   逻辑   lse   function   定时器   val   nts   

原文地址:https://www.cnblogs.com/huichaoboke/p/10945663.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!