【发布时间】:2017-09-06 10:45:58
【问题描述】:
我想做一些相当复杂的事情,我一直在使用 moment.js 或 countdown.js 来尝试解决这个问题,但我认为我的要求太复杂了?我可能错了。这是标准...
我需要能够实现以下目标,而不必每年手动更改日期,只需添加一次并在一页上有许多倒计时。
- 查找当前日期
- 查找当前年份
- 查找当前月份
- 在一个月的一周内查找适用的日期 ¬ 第 3 个星期日或第 2 个星期六
- 转成JS输出为html并运行倒计时
- 当日期过去时 - 重置为下一年
相当精神。例如,如果一个事件总是在三月的第三个星期日。日期不会每年都一样。
- 2016 年 - 3 月 19 日星期日
- 2017 - 3 月 20 日星期日
- 2018 - 3 月 18 日星期日等
我希望这能得到很好的解释,但我意识到这可能是一团糟。我设法通过手动添加的日期每年重置它,但后来有人扔了 date 的扳手每年都不同。
var event = new Date();
event = new Date(event.getFullYear() + 1, 3 - 1, 19);
jQuery('#dateEvent').countdown({ until: event });
<div id="dateEvent"></div>
【问题讨论】:
-
我建议您使用moment.js 来获得正确的一天。然后你可以使用这里给出的答案:stackoverflow.com/questions/33335554/…
-
嗨 - 好吧,看起来很有希望,但我想我必须为每个事件设置函数?会有数百个。我也在试图弄清楚如何输出这一刻。我可以使用我设置的另一个计时器 var time = moment().format('h:mm:ss a');然后 $('.time').text(time);
-
您只需要一年、一个月以及一个月中给定日期的哪个间隔,其余的您可以自动化。如果用户输入一个日期,或者从数据库中提供一个日期,你可以计算它是哪一天,它是在月份中出现的,并用它创建你的 moment.js 对象。唯一不同的是第一次发生此类事件的“开始日期”。
-
您应该“自行回答”您的问题,这样其他访问者才能看到答案,并且在 2 天内您可以接受该答案作为解决方案。您不应该在问题中发布答案。
-
会做@Tschallacka
标签: javascript jquery datetime momentjs countdowntimer