当我将鼠标悬停在图像上时,我试图让我的图像移动,然后在停止之前让它保持移动 3 秒钟。 我可以让它移动,但不能停止。 有什么想法吗? 这是我的代码段:
var time = setInterval(timer, 300);
onEvent("image3", "mouseover", function() {
var x = getXPosition("image3");
var y = getYPosition("image3");
while ((getXPosition("image3") = x && getYPosition("image3") = y)) {
}
});
function timer() {
setPosition("image3", randomNumber(0, 250), randomNumber(0, 250), 100, 100);
clearInterval();
}
您需要指定使用 clearInterval
时要清除的间隔:
clearInterval(time);
clearInterval(( 接受 1 个参数 - 对应于要清除的计时器的 intervalID。
间隔标识
要取消的重复操作的标识符。此 ID 由对 setInterval(( 的相应调用返回。1
将变量time
传递给 clearInterval(( 的调用:
clearInterval(time);
请参阅下面演示的内容。
var time = setInterval(timer, 300);
var startTime;
function timer() {
if (startTime === undefined) {
startTime = new Date();
} else {
diff = (new Date() - startTime) / 1000;
console.log('timer() - elapsed time: ', diff);
if (diff >= 3) {
console.log('clearing interval');
clearInterval(time);
}
}
}
1https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/clearInterval