数据库提取后的便士拍卖计时器更新

时间:2015-10-09 14:18:38

标签: javascript php timer countdown

所以我在一分钱拍卖网站上实现这个功能。使用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&lt; 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>');

我假设自倒数计时器到达end_date后它会自动重置它。 但它没有,而是打印结束日期并恢复到旧的倒计时。 每当我刷新页面时,计时器都会正常更新,但是我希望它能够随时刷新,我认为它需要一个AJAX调用,任何帮助?

1 个答案:

答案 0 :(得分:1)

最好的方法是销毁countdown窗口小部件,然后使用数据库中更新的end_date显示它