我想从一个数字开始倒计时,比如说 100。但我不希望倒计时很明显,比如以秒为单位。我想要 3 个如下所示的间隔,如果它们可以是随机的,那就更好了。每次数字发生变化,我都想设置一个 cookie 来保存新值。
- 2秒
- 8秒
- 14 秒
所以它的工作原理如下:
用户登陆页面,看到数字 100,然后 2.8 或 14 秒后,100 递减至 99,依此类推,直到达到 0假设用户看到 2 个间隔,剩下 98,该值应该在 cookie 中设置,因此当他们再次访问该页面时,不会看到 100,而是新值。
很难,有什么插件可以帮助我吗?
最佳答案
您可以使用$.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;
});
这尚未经过测试,但应该可以解决问题;希望有帮助!
关于JavaScript/JQuery 倒计时器具有多个间隔设置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7771813/