【问题标题】:Countdownjs how to show 0 unitsCountdownjs如何显示0个单位
【发布时间】:2014-11-06 00:31:11
【问题描述】:

我正在使用 JS 库 CountdownJS。我想在适用时为每个时间单位返回一个零值。目前,当值为 0 时,单位不显示。

这是我想看到的:

这是我目前看到的:

任何熟悉该库的人都知道我会在源代码中的哪个位置进行更新?

参考:http://countdownjs.org/readme.html

【问题讨论】:

  • 需要为此使用库吗?倒计时很容易实现(一个功能)。
  • 不,不需要使用库。您是否有一个函数或其他堆栈问题已经回答了这个问题?
  • 我在下面发布了一个答案。希望这对你有用。

标签: javascript jquery countdown countdownjs.js


【解决方案1】:

这是我不久前写的一个非常简单的倒计时函数。不过可以随意使用。

var t = new Date(2014,11,25,9,30),
    p = document.getElementById("time"),
    timer;
var u = function () {
    var delta = t - new Date(),
        d = delta / (24 * 3600 * 1000) | 0,
        h = (delta %= 24 * 3600 * 1000) / (3600 * 1000) | 0,
        m = (delta %= 3600 * 1000) / (60 * 1000) | 0,
        s = (delta %= 60 * 1000) / 1000 | 0;
    
    if (delta < 0) {
        clearInterval(timer);
        p.innerHTML = "timer's finished!";
    } else {
        p.innerHTML = d + "d " + h + "h " + m + "m " + s + "s";
    }
}
timer = setInterval(u, 1000);
&lt;h1 id="time"&gt;&lt;/h1&gt;

唯一棘手的部分可能是我的使用

h = (delta %= 24 * 3600 * 1000) / (3600 * 1000) | 0

delta %= ... 在执行%= 之后返回delta。这只是为了保存角色。如果您不喜欢这样,您可以将delta %= ... 部分分开:

delta %= 24 * 3600 * 1000;
h = delta / (3600 * 1000) | 0;
// ... do the same for the rest

fiddle

【讨论】:

  • 像魅力一样工作,谢谢。 sn-p 套件中的便捷工具
猜你喜欢
  • 1970-01-01
  • 2020-10-18
  • 1970-01-01
  • 2022-11-02
  • 2010-09-16
  • 1970-01-01
  • 2022-12-06
  • 2020-09-16
  • 2010-11-18
相关资源
最近更新 更多