ランダムな画像を上に移動して元の位置に戻そうとしています。JS:setTimeout内でsetTimeoutを使用すると、setTimeoutは何の効果もありません。
<script>
var looper = setInterval(animateAll, 2000, myArray);
function animateAll(myArray) {
// Gets a random image ID
var randomId = myArray[Math.floor(Math.random()*myArray.length)];
// Make that random icon bounce
bounce(randomId) ;
}
function bounce(randomId) {
var icon = document.getElementById(randomId)
var top = icon.offsetTop;
setTimeout (icon.style.top = top-20 + "px", 500) ;
setTimeout (icon.style.top = top + "px", 500) ;
}
</script>
setTimeout
の両方の回線が正常に動作します。 1行だけで、画像は元の位置に戻らずに移動します。両方のラインでは、画像が全く動かない。恐らくそれぞれの間に遅延がないからです。
ありがとうございました!
最初の引数に関数を渡す必要はありませんか? – PhilVarg