アプリ版:「スタンプのみでお礼する」機能のリリースについて

こんにちは。
FlashCS3、Actionscript2.0使用です。

setIntervalで1500ミリ秒おきに関数を動作させているんですが
これをMath.random()関数を使って1000~1500ミリ秒おきに動作をさせたいです。
setInterval(test,1000+Math.floor(Math.random()*500));
でやってみてますが、うまくいきません(当たり前ですが……)

この場合はどのようにすればうまくいくでしょうか?
よろしくお願いします。

A 回答 (1件)

動作環境がないので確認できてませんが‥



多分 clearInterval でクリアした後に再度 setInterval で指定しないと
setInterval(test,1000+Math.floor(Math.random()*500)); は思われる様な
動作しないと思います。

それよりもsetIntervalは固定して以下のようなのは如何でしょう

function f(msg) {
 n++;
 if (n >= maxCount) {
   //動作させる処理
   maxCount = 10 + Math.floor(Math.random() * 5);
   n = 0;
 }
}
var n = 0;
var maxCount = 10 + Math.floor(Math.random() * 5);
var timer = setInterval(f, 100);
    • good
    • 0
この回答へのお礼

ありがとうございます!
結構複雑ですね……大事に使わせていただきます。
//動作させる処理
中に反復させたい関数を実行すればいいわけですね。

お礼日時:2008/11/01 18:07

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!