好吧,我试着设置代码的间隔,但它只移动一次
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++;
}
}
请解释为什么这个被打破谢谢。
为了使这个更清楚,因为你似乎遇到了一些麻烦:你在你的间隔内重新定义了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()
采用函数名称或闭包,您不需要使用闭包,只需传递您已定义的函数的名称。