Опрос с помощью Javascript, но в разные промежутки времени - PullRequest
1 голос
/ 08 октября 2011

Я использую опрос с помощью Javascript, чтобы получить некоторую информацию с помощью ajax, но с точно такими же интервалами времени.

intervalRequestId = setInterval('loadInfo()', 2500);

Поскольку теперь я знаю, что информация поступает в разные промежутки времени, я хочу сделать опрос в разные промежутки времени. Например:

Первый запрос: через 2 секунды -> очень важно, что через 2 секунды! Второй запрос: через 7 секунд Третий запрос через 15 секунд Четвертый запрос через 25 секунд

Есть ли хорошая возможность?

1 Ответ

1 голос
/ 08 октября 2011
(function(){
var iteration = 0, // keep track of your iterations
    delays = [7000, 15000, 25000], // delays between iterations
    callback; // wrapper for your loadinfo()

callback = function(){
    // run your function
    loadinfo();
    // determine next delay, if not set, use the last of the sequence
    var delay = delays[iteration] || delays[delays.length - 1];
    // next run, next iteration
    iteration++;
    // register callback to run after determined delay
    setTimeout(callback, delay);
};

// run first execution after 2 seconds
setTimeout(callback, 2000);
})();
...