原生的元素移动方法

function toMove(obj,attr,dir,tar,endFn)
{
dir=parseInt(getStyle(obj,attr))<tar?dir:-dir;
clearInterval(obj.timer);
obj.timer=setInterval(function()
{
var speed=parseInt(getStyle(obj,attr))+dir;
if (speed>tar&&dir>0)//控制层停下的位置
{
speed=tar;
}
if (speed<tar&&dir<0)//控制层停下的位置
{
speed=tar;
}

obj.style[attr]=speed+'px';//层左移
if (speed==tar)//停止定时器
{
clearInterval(obj.timer);//清除定时器
endFn&&endFn();
}
},100);
}

function getStyle(obj,arr){
return obj.currentStyle?obj.currentStyle[arr]:getComputedStyle(obj)[arr];//三元表达式,确定返回的方法,兼容ie
}

posted @ 2016-07-14 09:37  xlxlyl  阅读(122)  评论(0编辑  收藏  举报