安定したループができない(JavaScipt)!?!?!?

[上に] [前に] [次に]
しいこ 1999/09/20(月) 23:31:25
JavaScriptでの質問です。

例えば右から左へボールが流れて行くというのをレイヤーを使って
やるとします。でも、
function ball()
{
document.layers["ball1"].x+=5;
setTimeout("ball()",2)
}

のようにsetTimeoutを使ってループさせると、なんだか
動きがガタガタというか、一定間隔ではとても動きません。
for文を使ってはすぐ消えちゃうし・・・。

それともこの安定した動きが出来ないのがJavaScript
の欠点とかあきらめるしかないんでしょうか?

良い案をお持ちでしたらぜひぜひ教えてください!!

しいこ 1999/09/20(月) 23:34:04
>右から左へ
>document.layers["ball1"].x+=5;
というのは単なる書き間違えです。

document.layers["ball1"].x-=5;
ですです。

Nobu3 [E-Mail] [HomePage] 1999/09/20(月) 23:49:06
根本的な解決にはならないと思いますけど、タイマーの数値は1000分の1秒なので、「2」というのは小さすぎると思います。
パソコンの性能にもよるでしょうが、「50」くらいにしてみてはどうでしょう?

[上に] [前に] [次に]