目前我们有这段代码,它可以工作,只是它需要使用指定的时区,而不是用户的时区:
$('#countdown').countdown('<?php echo $date_end?>').on('update.countdown', function(event) {
var format = '%-S second%!S';
if (event.offset.years > 0 || event.offset.weeks > 0 || event.offset.days > 0 || event.offset.hours > 0 || event.offset.minutes > 0) {
if(event.offset.minutes > 0) {
format = '%-M minute%!M ' + format;
}
if(event.offset.hours > 0) {
format = '%-H hour%!H ' + format;
}
if(event.offset.days > 0) {
format = '%-d day%!d ' + format;
}
if(event.offset.weeks > 0) {
format = '%-w week%!w ' + format;
}
}
$(this).html(event.strftime(format));
}).on('finish.countdown', function(event) {
$(this).html('Finished');
});
我见过几个添加时区的示例,但没有一个像我们一样使用 jquery 倒计时插件。
关于如何添加 +10 作为当前时区有什么想法吗?所以它使用该时区而不是用户的时区?
谢谢。
最佳答案
我猜你正在使用 https://github.com/hilios/jQuery.countdown ,因为它没有时区选项来使用它。
我使用 moment.js 和 moment-timezone-with-data.js(包含所有时区)来处理时区。
<div data-countdown="2015/05/20" data-zone="US/Central" class="countdown"></div>
将日期转换为正确时区并以毫秒为单位返回的函数
var timefun = function (countdown,zone){
var date = moment.tz(countdown,"YYYY/MM/DD",zone);
return date.valueOf();
}
利用上述函数将毫秒作为参数传递给 jQuery.countdown()
$(".countdown").countdown(timefun($(".countdown").data("countdown"),$(".countdown").data("zone")))
示例: http://jsfiddle.net/heLrsnqx/2/
如果您使用http://keith-wood.name/countdown.html ,引用下面的例子
关于jquery - 使用 jQuery CountDown 时设置时区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30066834/