DDR爱好者之家 Design By 杰米
废话不多说了,直接给大家贴代码了。具体代码如下所示:
其实这倒计时之前有接触过很多,只是用的都是别人的源码。
应项目需求,终于认真一回,把一个自己看似很简单的问题,终于耗上了跨度一个星期的时间,才弄出来。
源码直接复制黏贴可用。
冗余版+简化版。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title></title>
</head> <body>
<script type="text/javascript">
var createTime = '2016-11-14 10:20:00';//开始时间
var limitTimes = 10;//时间长度
// 倒计时 入口
countdowns = window.setInterval(function(){
var arr = cutDoowns(limitTimes,createTime);
document.write(formatDate(arr[0])+':'+formatDate(arr[1])+':'+formatDate(arr[2])+'</br>');
if(arr[2]){
document.write('时间到!');
}
},1000);
/*
s,10分钟后的具体日期:
date,开始时间
然后转化成毫秒比较,所得的差值化成分秒,就是倒计时的分秒。
*/
function cutDoowns(s,date){
console.log('');
var flag = false;
var arr = [];//arr[0]:分,arr[1]:秒,arr[2]:返回boolean
var now = new Date();//当前时间
var now1 = new Date(date);//开始时间
console.log('开始时间 now1: '+now1);
now1.setMinutes(now1.getMinutes()+s);//10分钟后的时间
console.log('当前时间 now :'+now);
console.log('10分钟时 now1:'+now1);
// 转化成年月日 时分秒 格式
var n = now.getFullYear()+'/'+(now.getMonth()+1)+'/'+now.getDay()+' '+now.getHours()+':'+now.getMinutes()+':'+now.getSeconds();
var n1 = now1.getFullYear()+'/'+(now1.getMonth()+1)+'/'+now1.getDay()+' '+now1.getHours()+':'+now1.getMinutes()+':'+now1.getSeconds();
// 日期转化成毫秒
var time1 = (new Date(n)).getTime();
var time2 = (new Date(n1)).getTime();
// 毫秒转日期格式
var time11 = new Date(time1);
var time21 = new Date(time2);
console.log('当前时间:'+n+',转化成毫秒:'+time1+',time11:'+time11);
console.log('10分钟时:'+n1+',转化成毫秒:'+time2+',time21:'+time21);
var surplusSec = time2-time1;//距离解锁剩余毫秒
if(surplusSec<=0){
clearInterval(countdowns);
flag = true;
return arr = [00,00,flag];
}
var minute = Math.floor(surplusSec/1000/60);//分钟
var second = Math.floor((surplusSec-minute*60*1000)/1000);//剩余秒数
console.log('剩余时间,minute: '+minute+',second: '+second+',surplusSec:'+surplusSec);
// var second = Math.round(surplusTimes);//秒数
console.log('剩余时间,minute: '+minute+',second: '+second+',surplusSec:'+surplusSec);
arr = [minute,second,flag];
return arr;
}
//格式化日期:把单字符转成双字符
function formatDate(n){
n = n.toString();
// console.log(n);
if(n.length<=1){
n = '0'+n;
}
// console.log(n);
return n;
}
</script>
</body>
</html>
简化版本:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>打开调试工具,看效果!</title>
</head>
<body>
<script type="text/javascript">
/*
打开调试工具,看效果!
思路:
1.设置一个倒计时的时间长度;
2.设置开始时间和当前时间;
3.结束时间是 开始时间+倒计时间;
4.结束毫秒-开始毫秒=剩余倒计时间。
*/
// 准备
var countdownMinute = 10;//10分钟倒计时
var startTimes = new Date('2016-11-16 15:55');//开始时间 new Date('2016-11-16 15:21');
var endTimes = new Date(startTimes.setMinutes(startTimes.getMinutes()+countdownMinute));//结束时间
var curTimes = new Date();//当前时间
var surplusTimes = endTimes.getTime()/1000 - curTimes.getTime()/1000;//结束毫秒-开始毫秒=剩余倒计时间
// 进入倒计时
countdowns = window.setInterval(function(){
surplusTimes--;
var minu = Math.floor(surplusTimes/60);
var secd = Math.round(surplusTimes%60);
console.log(minu+':'+secd);
if(surplusTimes<=0){
console.log('时间到!');
clearInterval(countdowns);
}
},1000);
</script>
</body>
</html>
以上所述是小编给大家介绍的JS实现根据用户输入分钟进行倒计时功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
DDR爱好者之家 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
DDR爱好者之家 Design By 杰米
暂无评论...
更新日志
2025年10月29日
2025年10月29日
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]