首页 > 其他 > 详细

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

时间:2019-05-29 19:36:30      阅读:89      评论:0      收藏:0      [点我收藏+]
//获取非行间样式
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)
}

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

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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!