为啥老是提示moveElement这个函数没有调用呢
为什么老是提示moveElement这个函数没有调用呢
------解决思路----------------------
这块,写规范着点好吧,你哪里直接连成一个字符串,作为setTimeout的第一个参数,这也能运行吗?
<html>
<head>
<title>Message</title>
</head>
<body>
<p id = "message"> Whee! </p>
<script language="javascript" src="addLoadEvent.js"></script>
<script language="javascript" src="positionMessage.js"></script>
<script language="javascript" src="moveElement.js"></script>
</body>
</html>
function positionMessage ( ) {
if (!document.getElementById) {
return false;
}
if (!document.getElementById("message")) {
return false;
}
var elem = document.getElementById("message");
elem.style.position = "absolute";
elem.style.left = "50px";
elem.style.top = "100px";
alert("1");
moveElement("message",200,100,10);
}
function moveElement ( elementID , final_x , final_y,interval ) {
if (!document.getElementById) {
return false;
}
if (!document.getElementById("message")) {
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_y ) {
xpos --;
}
if ( ypos < final_y ) {
ypos ++;
}
if ( ypos > final_y) {
ypos --;
}
elem.style.left = xpos + "px";
elem.style.top = ypos + "px";
var repeat = "moveElement(' "+elementID+" ',"+final_x+","+final_y+","+interval+")";
movement = setTimeout (repeat,interval);
}
function addLoadEvent (func ) {
var oldonload = window.onload;
if (typeof window.onload != "function") {
window.onload = func;
} else {
window.onload = function ( ) {
oldonload ( );
func ( );
}
}
//alert("1");
}
addLoadEvent (moveElement);
addLoadEvent (positionMessage);
------解决思路----------------------
movement = setTimeout (function(){
moveElement(elementID,final_x,final_y,interval);
},interval);
这块,写规范着点好吧,你哪里直接连成一个字符串,作为setTimeout的第一个参数,这也能运行吗?