如何在此倒计时中添加随机区间

时间:2011-12-21 00:57:50

标签: jquery

我有以下代码。这是一个倒数计时器,我必须输入计数器的开始时间。我想知道如何为defaultTimer变量设置30秒到2分钟之间的随机间隔。

$(function() {
    var defaultTimer = 25, // Default amount of seconds if url variable is not found
        callback = function() {
            // Will be executed when the timer finishes
            alert("Time!!");   
        };

    var counter = 1, timer, 
        match = document.location.href.match(/[\?|&]timer=(\d+)/i),
        totalTime = match ? match[1] : defaultTimer;

    timer = setInterval(function() {
        if (totalTime != -1 && !isNaN(totalTime)) {
            val = 'Time left: ' + (function() {
                var m = Math.floor(totalTime / 60);
                if (m < 10) {
                    return '0'.concat(m);
                } else {
                    return m;
                }
            })() + ':' + (function() {
                var s = totalTime % 60;
                if (s < 10) {
                    return '0'.concat(s);
                } else {
                    return s;
                }
            })();

            $('#counter').html(val);
            totalTime--;
        } else {
            window.clearInterval(timer);
            timer = null;
            callback();
        }
    }, 1000);
});

1 个答案:

答案 0 :(得分:1)

Math.random()将为您提供0到1之间的随机数。如果您想在30到120之间进行此操作:

Math.floor(Math.random()*90 + 30)