setTimeout的延迟部分被忽略,Javascript
我试图添加一个sleep/delay函数来制作一个div滑出的动画。目前,它将立即变成-60公分,没有任何延迟,这防止了潜水器滑出 不知道为什么setTimeout的延迟部分被忽略,Javascript,javascript,Javascript,我试图添加一个sleep/delay函数来制作一个div滑出的动画。目前,它将立即变成-60公分,没有任何延迟,这防止了潜水器滑出 不知道为什么setTimeout会忽略时间延迟 for(activeSlide; activeSlide < i; activeSlide++){ animateLeft(activeSlide); function animateLeft(activeSlide){ div[activeSlide].style.left =
setTimeout
会忽略时间延迟
for(activeSlide; activeSlide < i; activeSlide++){
animateLeft(activeSlide);
function animateLeft(activeSlide){
div[activeSlide].style.left = step+'em';
step -= 6;
if(step < -60) {
return;
}
setTimeout(animateLeft(activeSlide), 5000);
}
}
for(activeSlide;activeSlide
您正在立即调用animateLeft(activeSlide)
,并设置超时以在5秒内调用其返回值
您希望这样做:
setTimeout(function() { animateLeft(activeSlide); }, 5000);
否则:
setTimeout(animateLeft, 5000, activeSlide);
什么时候定义了
步骤
?