jQuery计时器写剩余时间
Posted
技术标签:
【中文标题】jQuery计时器写剩余时间【英文标题】:jquery timer write time remaining 【发布时间】:2011-08-13 13:37:05 【问题描述】:我有一个段落字段,我想在其中放置此计时器剩余的秒数:
html:
<p>xx seconds remaining</p>
window.setInterval(retrieveLog, 20000);
我该怎么做?
【问题讨论】:
【参考方案1】:调用时,存储结束时间:
var end = (new Date).getTime() + 20000 * 1000; // current time in ms since 1/1/1970, plus the interval time
window.setInterval(retrieveLog, 20000);
并添加另一个更新文本的间隔:
var interval = setInterval(function()
var now = (new Date).getTime();
$("p").text(Math.floor(( end - now ) / 1000));
if(now > end) clearInterval(interval);
, 1000);
http://jsfiddle.net/pimvdb/b25KR/
【讨论】:
但是如果我想在剩余时间为 0 秒时重置它? @Michele:使用clearInterval
,需要传递区间返回的值。请查看我的编辑。
@pimvdb 顺便说一句,要获取Date
实例的数值,您不必使用getTime()
。一个简单的数字强制也有效:+new Date
返回与 (new Date).getTime()
相同。
@Šime Vidas:你完全正确。我更喜欢getTime
,因为它的速度。 jsperf.com/gettime-vs-plus【参考方案2】:
试试this countdown脚本
【讨论】:
以上是关于jQuery计时器写剩余时间的主要内容,如果未能解决你的问题,请参考以下文章