代码如下,是个调用 onmouseover加载图片的动画,为什么调用clearTimeout(elem.movent),动画还会发生卡住现象,求大神指点。
function moveMessage(ele,final_x,final_y,interval){
if(!document.getElementById)return false;
if(!document.getElementById(ele))return false;
var elem=document.getElementById(ele);
if (elem.movement)
{
clearTimeout(elem.movent);
}
var xpos=parseInt(elem.style.left);
var ypos=parseInt(elem.style.top);
if(xpos==final_x&&ypos==final_y){
return true;
}
if (xpos<final_x){
var d=Math.ceil((final_x-xpos)/10);
xpos+=d;
}
if (xpos>final_x){
var d=Math.ceil((xpos-final_x)/10);
xpos-=d;
}
if (ypos<final_y)
{
var d=Math.ceil((final_y-ypos)/10);
ypos+=d;
}
if (ypos>final_y)
{
var d=Math.ceil((ypos-final_y)/10);
ypos-=d;
}
elem.style.left=xpos+"px";
elem.style.top=ypos+"px";

var repeat="moveMessage('"+ele+"',"+final_x+","+final_y+","+interval+")";
movement=setTimeout(repeat,interval);
}