嘿所有我已将代码发布到我正在使用的倒数计数器。它可以在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)
答案 0 :(得分:3)
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;