我尝试为代码设置间隔,但它只移动一次L
function moveAllTriangles(){
var spike = document.getElementById("spike");
var mg = setInterval(function(){moveTriangle();},1125);
function moveTriangle(){
var moved = 100;
spike.style.left = (750 - moved) + 'px';
moved++;
}
}
请解释为什么这会被打破谢谢。
答案 0 :(得分:2)
为了使这一点更清晰,因为你似乎遇到了一些麻烦:你在你的间隔内重新定义 moved
,所以每次运行时,它都会被设置回100。
您需要在
function moveAllTriangles(){
var spike = document.getElementById("spike");
var moved = 100;
function moveTriangle(){
spike.style.left = (750 - moved) + 'px';
moved++;
}
var mg = setInterval(moveTriangle, 1125);
}
此外,setInterval()
采用函数名称或闭包,您不需要来使用闭包,只需传递您已经使用过的函数的名称定义