根据另一个变量生成一个随机数

时间:2009-07-15 18:16:28

标签: javascript random

我有一个每10秒抓取一个文件的计时器:

if((Timer%10=="0")||(Timer=="1")){

我还有一个随机数生成器:

var randomNum = Math.floor(Math.random() * 10) + 2;

我还有一个存储剩余时间的变量:

Timer=0;
function countdown(auctionid)
{
    var auctions;
    var divs;

    Timer=Timer+1;

    if((Timer%10=="0")||(Timer=="1")){
        $.get("current.php", {id:auctionid},
            function(data) {
                auctions=data.split("||");
                for(n=0;n<=auctions.length;n++)
                {
                    if(auctions[n] != undefined)
                    {
                        divis=auctions[n].split("##");
                        $('#futu'+divis[0]).html(divis[1]);
                    }
                }
            }
        );
    }
    var cauctionid="auctionid";
    var tauctions=auctionid.split("|");
    for(i=0;i<=tauctions.length;i++)
    {
        if(tauctions[i] != undefined)
        {
            var dd=$('#futu'+tauctions[i]).text();
            var cdd=dd-1;
            $('#futu'+tauctions[i]).html(cdd);

            dd=dd*1000;
            dday=Math.floor(dd/(60*60*1000*24)*1)
            dhour=Math.floor(dd/(60*60*1000)*1)
            dmin=Math.floor((dd%(60*60*1000))/(60*1000)*1)
            dsec=Math.floor(((dd%(60*60*1000))%(60*1000))/1000*1)

            if(dday==0&&dhour==0&&dmin==0&&dsec==0) {
                $('#Bid'+tauctions[i]).html("SOLD");
                //return
            }
            if(dhour <=9)
            {
                dhour = "0"+dhour;
            }
            if(dmin <=9)
            {
                dmin = "0"+dmin;
            }
            if(dsec <=9)
            {
                dsec = "0"+dsec;
            }

            if(dd>=1000)
            {
                var valll=dhour+":"+dmin+":"+dsec;
            }

            if(dd<1000)
            {
                var valll="00:00:00";
            }

            $('#Bid'+tauctions[i]).html(valll);
        }
    }
    refreshID=setTimeout("countdown('"+auctionid+"')",1000);
}

我需要做的是在运行后生成一个新的随机数,等待它再次运行的秒数。我需要这个Javascript在2到12秒之间随机运行,然后在新的随机时间再次运行。

1 个答案:

答案 0 :(得分:1)

我很困惑你想要每隔2-12秒运行一次是什么,而且你所拥有的代码大部分都让我感到恐惧......这个函数一旦被称为永远每秒自称?吓人。

看起来您已经拥有了回答问题所需的所有部分。如果你需要延迟一些javascript你可以使用setTimeout,你有随机数(虽然我认为你的表达需要“圆”而不是“地板”):

setTimeout(functionNameOrAString, Math.round(Math.random() * 10) + 2)