今天做在线培训系统,因在线测试需要限时。故想通过JS实现计时功能。计时原理如下:
利用setTimeout函数实现计时,每秒让“秒值”加1,如果“秒值”等于60则重置为00且向分钟进位.
当“秒值”小于10的时候,将秒设置为两位整数,不足的部分补0,如第7秒则显示为07.
初始化时间为00:00 分钟
var s=$(this).html().split(":")
那么是不是只要判断parseInt(s[1])小于10就设置为"0"+parseInt(s[1]),就能正常计时了呢?
可执行结果并如我所愿,当计时器本该循环到08的时候却重置为00了,居然成了八进制!
瞧parseInt干的好事!最后将parseInt(s[1],10 )问题解决。
总结,由于太多的”我以为“,”我觉得“而导致错把JS当C#的转换函数使用,今天parseInt给我上了一课。