数据库获取后便士拍卖计时器更新
Penny Auction Timer Update after Database fetch
所以我在一分钱拍卖网站上实现了这个功能。使用 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>');
我认为自从倒数计时器开始 end_date 后,它应该会自动重置。
但它没有,而是打印结束日期并恢复到旧的倒计时。
每当我刷新页面时,计时器都会正常更新,但我希望它在旅途中刷新,我认为它需要一个 AJAX 调用,有什么帮助吗?
最好的方法是销毁 countdown
小部件,然后使用数据库
中更新的 end_date
显示它
所以我在一分钱拍卖网站上实现了这个功能。使用 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>');
我认为自从倒数计时器开始 end_date 后,它应该会自动重置。 但它没有,而是打印结束日期并恢复到旧的倒计时。 每当我刷新页面时,计时器都会正常更新,但我希望它在旅途中刷新,我认为它需要一个 AJAX 调用,有什么帮助吗?
最好的方法是销毁 countdown
小部件,然后使用数据库
end_date
显示它