显示效果:5月20日 18:00
第一步:在script中增加基础方法
Date.prototype.Format = function (fmt) { var o = { "M+": this.getMonth() + 1, //月份 "d+": this.getDate(), //日 "h+": this.getHours(), //小时 "m+": this.getMinutes(), //分 "s+": this.getSeconds(), //秒 "q+": Math.floor((this.getMonth() + 3) / 3), //季度 "S": this.getMilliseconds() //毫秒 }; if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length)); for (var k in o) if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length))); return fmt; }该基础方法需定义在最前,否则将调用无效
第二步:写一个自己的方法处理数据
function getBeginTime(time){ var time = time.replace(/-/g,"/"); var beginTime= new Date(time); var begin = beginTime.Format("MM年dd日 hh:mm"); return begin; }方法中,若传入参数time的格式为:2017-01-01 00:00:00,则需要time.replace(/-/g,”/”);将日期格式化为毫秒模式,若time格式本身为毫秒,则无需此方法转换。
beginTime.Format(“MM年dd日 hh:mm”)即为调用之前的基础方法,实现日期转换,format里面的字符串可以一般Java方法中参数的来,例如“yyyy年MM月dd日 hh:mm:ss” 。
显示效果:18:09:08
第一步:在script中增加基础方法
function cutTime(time,id){ var time = time.replace(/-/g,"/"); var EndTime= new Date(time); var NowTime = new Date(); var t =EndTime.getTime() - NowTime.getTime(); var d=Math.floor(t/1000/60/60/24); var h=Math.floor(t/1000/60/60%24); var m=Math.floor(t/1000/60%60); var s=Math.floor(t/1000%60); h = checkTime(h); m = checkTime(m); s = checkTime(s); $("#th"+id).html(h); $("#tm"+id).html(m); $("#ts"+id).html(s); }第二步:对倒计时数字处理,处理时间为个位数的情况,补零操作
function checkTime(i){ if(i<10) { i = "0" + i; } return i; }第三步:调用JS延时方法,每隔一秒调用本方法
setInterval("cutTime('2017-12-12 10:00:00',1)",1000);这样就完美实现了倒计时的显示了~
