嘿,我已将代码发布到我正在使用的倒计时计数器。可以在 JSFiddle 页面上找到它:http://jsfiddle.net/QVwGt/
正如您在该页面上看到的,计时器从 95 开始(以秒为单位),然后开始 94、93、92、91、90、85、84、83、82 、81、80、75、74...等
应该从59、58、57开始,一直到00,然后再次从59开始。它曾经在还剩 XXX 天时执行此操作,但现在自从进入 2 位数天后,它开始执行此操作,我查看了代码,但无法找到问题的根源。
就其进展而言,即使从 95 开始,它也确实能跟上 59 秒的节奏(在计算机时钟指针上观察)。但从 95 开始看起来不太好:o)
任何帮助都会很好地解决这个问题! :o)
最佳答案
digits[c].__max = ((c-1) % 2 == 0) ? 5: 9;
您在这里注释掉了正确的代码
digits[c].__max = (c % 2 == 0) ? 5: 9;
基本上,c 是你的迭代器。因此,在本例中,您要查找第二个数字的最大值为 9,第一个数字的最大值为 5。请记住,您的迭代器是基于 0 的,而您正在考虑基于 1 的迭代器。
换句话说,0 % 2 == 0
和 1 % 2 != 0
但你看着它并看到 1 % 2 != 0
和 2 % 2 == 0
如果这样写就更清楚了:
digits[c].__max = ((c + 1) % 2 == 0) ? 9: 5;
关于jQuery 倒计时未正确倒计时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10743535/