JavaScript/JQuery 倒计时器具有多个间隔设置?

标签 javascript jquery cookies time countdown

我想从一个数字开始倒计时,比如说 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/

相关文章:

c# - 在内容页面之间遍历时 cookie 值消失

cookies - 我可以在 Electron 应用程序中读取 webview 的 cookie 吗?

javascript - jQuery 检测 Bootstrap 3 状态

javascript - 如何不在 Next.js 动态路由之间保持状态?

javascript - 多个实例与具有动态内容的一个实例

javascript - 这两个 JQuery 函数应该产生相同的行为吗?

Javascript 使用正则表达式匹配以字符集中的特定字符开头并以相同字符结尾的字符串

javascript - Parse JS ACL - Parse.User.current() 的 getPublicReadAccess 总是返回 false?

javascript - 如何避免 Google Search Console 出现 "FID issue: longer than 300ms"?

在 Flutter 中使用 Cookie 发布请求