【发布时间】:2013-04-10 11:43:08
【问题描述】:
我正在使用 Keith Wood 的 jQuery 倒计时计时器。 http://keith-wood.name/countdown.html
我想要实现的是带有停止和恢复按钮的计数,以及添加和减去分钟和秒的控件:
我创建一个计数(从 0 到 60 分钟)并立即暂停,如下所示:
$('#contador_tiempo').countdown({
since: 0,
format: 'MS',
layout: '{mnn}{sep}{snn}'
});
$('#contador_tiempo').countdown('pause');
但它似乎仍在后台运行。当我单击按钮进行加减时,函数会在该背景计数器之上执行操作,而不是在显示的计数器之上。
JSFiddle 上的完整代码,行为再现:
(玩一下控件,您会发现它一直在计数,尽管它已暂停。)
【问题讨论】:
-
看起来
pause和getTimes没有互相配合。getTimes似乎在不断更新。当删除其中一个单击事件中的所有代码并仅添加$('#contador_tiempo').countdown('getTimes')时,即使您在开始时将其暂停,您也可以看到数字数组不断增加。这可能是一个错误。pause的文档指出:No onTick or onExpiry events are triggered while the countdown is paused.这表明它不应该计算任何时间。我会联系插件的作者以获取相关信息。 -
只是补充一点,您应该先联系插件的作者,然后再询问 SO 或至少同时联系。您可能会在 SO 上找到一种解决方法,但作者可能会告诉您您做错了什么,或者发现一个错误被指出并修复它,而不是您最终得到一个 hacky 解决方法。
-
我已经向他发送了一封包含此问题的电子邮件,以便他查看。我希望我们能解决这个问题!谢谢。
-
是的,我过去曾与他联系过,但我认为公开此消息将有助于将来的其他人。
-
是的,你是对的。这对未来的用户来说是很好的信息。无论如何,我 +1 编辑了您的问题,因为不清楚为什么它会这样,因此我认为总的来说这是一个好问题。希望作者知道发生了什么:)
标签: javascript jquery countdown