所以我在一个便士拍卖网站上实现了这个功能。使用 countdown.js 作为运行倒计时的库。 倒计时的工作方式是:
<div class="countdown cf content_item-countdown" style="width: 100%;" data-countdown="<?php echo date('M d, Y H:i:s O', strtotime($item['end_date']));?>"></div>
这里的end_date
,来自数据库,是计时器停止(竞价结束)的日期
倒计时功能:
$('.countdown').each(function(){
var count = $(this), time = $(this).data('countdown'), format = $(this).data('format');
var Otime = new Date(time), o = {
serverSync: serverTime,
until:Otime,
// demo data set to reset timer, when it's finished
// change zeroCallback to prefered callback
zeroCallback: function(options) {
}
};
if(format){
$.extend(o,{format:format});
}else{
$.extend(o,{layout: '{dn} {dl} {hnn}{sep}{mnn}{sep}{snn}'});
}
$(this).countdown(o);
});
现在我应该实现另一个功能,
如果end_time <15 秒(表示剩余的出价时间小于15 秒),并且有人出价,计时器应自动重置为15 秒,依此类推。喜欢:http://www.quibids.com/en/
为此,我将 end_date
更新为特定秒数。
和更新计时器:
$(time_update).html( '<div class="countdown cf content_item-countdown" style="width: 100%;" data-countdown="">'+data[$i].end_date+'</div>');
我假设由于倒数计时器即将结束_date,它应该会自动重置它。 但它没有,而是打印结束日期并恢复到旧的倒计时。 每当我刷新页面时,计时器都会正常更新,但我希望它在旅途中刷新,我认为它需要 AJAX 调用,有什么帮助吗?
最佳答案
最好的方法是销毁 countdown
小部件,然后使用数据库中更新的 end_date
显示它
关于javascript - 数据库获取后便士拍卖计时器更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33040624/