Heim  >  Artikel  >  Web-Frontend  >  基于jQuery的倒计时插件代码_jquery

基于jQuery的倒计时插件代码_jquery

WBOY
WBOYOriginal
2016-05-16 18:06:58954Durchsuche

剩余时间:1小时:40分:30秒

复制代码 代码如下:

1 /*
* 倒计时插件,主要用来限时购买
* By wayshan 版本1.0
* 使用方法:
* $(function(){
* $("#ElementId").countdown({
* Edate:"2012-12-21 15:14:23"
* });
* })

*/
;(function($){
$.fn.countdown = function(options){
if (this.length == 0){
return false;
}
return this.each(function(){
var Default = {
Sdate:null,//开始时间(格式为“2010-10-10 10:10:10”)可以设置为服务端的时间
Edate:null,//结束日期(格式为“2010-10-10 10:10:10”)
callback:function(){
return false;
}
},
_H_Text='小时',
_M_Text='分',
_S_Text='秒',
_lT = null,
_cT = new Date(),
_eT = null,
_elT = null,
ctime = null,
etime = null,
DomId = null,
_timeout = null,
_gt = function(){
if (_lT == null) {
_elT = (etime - ctime);
if (_elT $('#'+DomId).html("0"+_H_Text+":0"+
_M_Text+":0"+_S_Text);
}
var _xT =Math.ceil(_elT/(24*60*60*1000));
_cT = parseInt(_cT.match(/\s(\d+)\D/)[1] * 3600)
+ parseInt(_cT.split(":")[1] * 60)+ parseInt(_cT.split(":")[2]);
_eT = _xT * 24 * 3600 + parseInt(_eT.match(/\s(\d+)\D/)[1] * 3600)
+ parseInt(_eT.split(":")[1] * 60) + parseInt(_eT.split(":")[2]);
_lT = _elT/1000;
}
if (_elT > 0) {
if (_lT >= 0) {
var _H = Math.floor(_lT / 3600);
var _M = Math.floor((_lT - _H * 3600) / 60);
var _S = (_lT - _H * 3600) % 60;
$('#'+DomId).html("" + _H + ""+_H_Text+":"
+ _M + "
"+_M_Text+":" + _S + ""+_S_Text);
_lT--;
} else {
clearInterval(_timeout);
if(s.callback && $.isFunction(s.callback)){
s.callback.call(this);
}
}
} else {
clearInterval(_timeout);
if(s.callback && $.isFunction(s.callback)){
s.callback.call(this);
}
}
},
strDateTime = function(str){
//判断日期时间的输入是否正确,类型必须形如为:2011-01-01 01:01:01
var reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;
var r = str.match(reg);
if(r==null)return false;
var d= new Date(r[1], r[3]-1,r[4],r[5],r[6],r[7]);
return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]
&&d.getHours()==r[5]&&d.getMinutes()==r[6]&&d.getSeconds()==r[7]);
}
var s = $.extend({}, Default, options || {});
DomId = this.id;
if (DomId == 'null'){
return;
}
_eT = s.Edate;
if (!strDateTime(_eT)){
alert('结束日期格式不正确');
return false;
}
if (s.Sdate != null){
_cT = s.Sdate;
}
_cT = _cT.toString();
cdate = _cT.replace(/-/g, '/');
_eT = _eT.toString();
edate = _eT.replace(/-/g, '/');
ctime = new Date(cdate);
etime = new Date(edate);
_timeout = setInterval(_gt, 1000)
});
}
})(jQuery);
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn