hello,这个问题有人遇到过吗,
函数没毛病,但是放进去了,也不报错,也不跑
function moveElement(elementID,final_x,final_y,interval){
if(!document.getElementById) return false;
if(!document.getElementById(elementID)) return false;
var elem=document.getElementById(elementID);
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){
xpos++;
}
if(xpos>final_x){
xpos--;
}
if(ypos<final_y){
ypos++;
}
if(ypos>final_y){
ypos--;
}
elem.style.left=xpos+"px";
elem.style.top=xpos+"px";
var repeat="moveElment('"+elementID+","+final_x+","+final_y+","+interval+"')";
movement=setTimeout(repeat,interval);
//这个变量,到底存放在哪里,函数比对好几次,没毛病,就是放进去动不了
}
moveElment
少了一个e
字母,另外这是一个函数,你把它当成字符串来拼接,它就是一个字符串了,不是一个函数。你应该这样写:除此之外,你这个代码糟点有点多,我就不想说了。举一个例子,递归的终止条件,你并没有写。