jQuery.countdown是一款功能齐全的jQuery倒计时插件。jQuery.countdown.js一个文件中集合了所有的倒计时功能,它能够显示各种时间格式,并提供回调函数。它的特点还有:
内置各种时间格式。
多元化支持。
支持i118。
支持日期从2011年开始。
安装
可以通过bower来安装jQuery.countdown插件。
bower install jquery.countdown
使用方法
在页面中引入jquery1.7+和jquery.countdown.js文件。
HTML结构
可以使用任何DOM元素作为容器。
初始化插件
在页面DOM元素加载完毕之后,通过下面的方法来初始化该倒计时插件。
$('div#clock').countdown(finalDate[, callback]);
该插件也支持jQuery的.on()方法来处理回调函数。
$('div#clock').countdown(finalDate)
.on('update.countdown', callback)
.on('finish.countdown', callback);
配置参数
finalDate:要倒计时的目标时间。该参数可以是以下任意格式:
一个原生的日期对象。
时间的毫秒数。
字符串格式的日期:
YYYY/MM/DD
MM/DD/YYYY
YYYY/MM/DD hh:mm:ss
MM/DD/YYYY hh:mm:ss
callback:回调函数。
配置对象
插件可以在第二个参数中接收一个配置对象。通过该配置对象可以自定义插件。
$('div#clock').countdown(finalDate, {
elapse: '{bool} Allow to continue after finishes',
precision: '{int} The update rate in milliseconds'
})
事件
该倒计时插件在状态改变时会触发下面的一些事件:
update.countdown
finish.countdown
stop.countdown
事件对象
多数情况下你需要event.strftime来格式化倒计时器,你可以访问下面的所有参数值:
{
type: '{String} The namespaced event type {update,finish,stop}.countdown',
strftime: '{Function} The formatter function',
finalDate: '{Date} The parsed final date native object',
elapsed: '{bool} Passed away the final date?'
offset: {
seconds: '{int} Seconds left for the next minute',
minutes: '{int} Minutes left for the next hour',
hours: '{int} Hours left until next day',
daysToWeek: '{int} Days left until next week'
daysToMonth:'{int} Days left until next month'
totalDays: '{int} Total amount of days left until final date',
weeks: '{int} Weeks left until the final date',
months: '{int} Months left until final date' ,
years: '{int} Year left until final date'
}
}
格式化时间
event.strftime为格式化时间的方法,它根据给定的格式字符串中的指令来格式化偏移日期。它的格式是使用%符号来分隔参数,任何不带%符号的字符串将被原样输出。
event.strftime('%W weeks %-d days %-H h %M min %S sec');
// => 1 星期 2 天 3 小时 04 分 05 秒
数值可以前导0,或不带0。如果不带0则需要在数值前添加-符号。
前导0格式(Directive)
不带前导0(Blank-padded)
描述
%Y
%-Y
倒计时年份
%m
%-m
倒计时月份
%n
%-n
Days left until the next complete month
%w
%-w
倒计时星期
%d
%-d
倒计时天数
%D
%-D
剩余的总天数
%H
%-H
剩余的小时数
%M
%-M
剩余的分钟数
%S
%-S
剩余的秒数