Таймер обратного отсчета JavaScript / JQuery с несколькими настройками интервалов? - PullRequest
0 голосов
/ 14 октября 2011

Я хочу обратный отсчет от числа, скажем, 100. Но я не хочу, чтобы обратный отсчет был очевидным, например, в секундах. Я хотел бы 3 интервала, как показано ниже, и если бы они могли быть случайными, это было бы еще лучше. При каждом изменении числа я хочу создать файл cookie, содержащий новое значение.

  • 2 секунды
  • 8 секунд
  • 14 секунд

Так это работает так:

Пользователь попадает на страницу, видит число 100 , затем либо через 2,8 или 14 секунд, 100 уменьшается до 99 и так далее, пока не достигнет 0. Скажите пользователь видит 2 интервала и получает 98 , это значение должно быть установлено в файле cookie, поэтому, когда они снова посещают страницу, не видит 100, но новое значение.

Тяжело, какие-нибудь плагины, чтобы помочь мне?

1 Ответ

2 голосов
/ 14 октября 2011

Вы можете использовать плагин $. DoTimeout () jQuery вместе с плагином $. Cookie () jQuery вместе следующим образом:

HTML:

<div id="timer"></div>

JavaScript:

var timer = ($.cookie('timer_cookie') != '') ? $.cookie('timer_cookie') : 100; // Current Timer
var intervals = [2000,8000,14000]; // Available Timer Intervals
var rand = Math.floor(Math.random()*intervals.length) // Random Number for Choosing Intervals

$('#timer').text(timer);
$.doTimeout('timer_id', intervals[rand], function(){
    timer = parseInt($('#timer').text()) - 1;        
    $('#timer').text(timer);
    $.cookie('timer_cookie', timer);    
return true;
});

Это не проверено, но должно сработать;надеюсь, это поможет!

...