【发布时间】:2015-11-17 11:54:20
【问题描述】:
在 a.js 文件中 我有一个名为
的函数Move(coordinates,callback) {
//Move the cursor from point A to point B based on the coordinates as parameter
});
在 b.js 文件中 我正在调用此函数,因为我希望每 30 秒后看到光标缓慢移动。 这是电话。
for(i=0;i<6;i++)
{
setTimeout(Move(inputcordinates,events = {
//someevents
}),30000);
}
问题是当页面加载时,函数正在执行并且光标已经移动了6次到该位置, 延迟并没有发生在我眼前,但功能肯定会执行。
上面显示的代码中可能存在什么问题。 我已经将代码增加到大约120000也仍然没有效果。
【问题讨论】:
-
您正在调用
Move()函数并将其返回值指定为setTimeout的第一个参数。将其包装在匿名函数setTimeout(function() { Move(...) }, ...中。并且您应该在循环的每一轮中调整超时参数。否则所有六个超时将同时触发。类似30000 * (i + 1)
标签: javascript jquery jquery-ui javascript-events