2016-08-11 4 views
-1
function main() { 
    var abc = document.getElementById('space'); 

    abc.style.left += 10 + 'px'; 

    main2(); 
} 

function main2() { 
    setInterval(main(), 1000); 
} 

このコード値の位置の位置は1秒で変更する必要があります。しかし、作業位置が一度だけ変更されているjavascriptの配置がcontionously変更されていません

+0

要素がありますcssに絶対配置されていますか?次のものsetInterval(main、1000); - 関数宣言ではなく関数宣言を使用します。 –

+1

'main'を直ちに呼び出し、' main'関数の結果を 'setInterval'に渡します。詳細については、複製を確認してください。 –

+0

maciej sikora yesポジショニングは絶対 –

答えて

0

ここでの主な問題は、単にそれを渡すのではなくmain関数を実行していることです。基本的にはこのようなものだ:

setInterval(function() { /* something inside */ }, 1000); 

私はこの機能を取り、外にそれを宣言することができます。

function main() { 
    // something inside 
} 
setInterval(main, 1000); // here I just pass the `main` function 

何を渡していないことが、関数を実行している:

function main() { 
    // something inside 
} 
setInterval(main(), 1000); 
+0

はsetInterval(main、1000)とsetInterval(main()、1000)の間にdiffrenceがあります。 –

+0

'setInterval(main()、1000)' - 'main'は一度だけ実行されます。 'setInterval(main、1000)' - 'main'は1秒ごとに実行されます。 –

関連する問題