倒计时:
此效果为近期业务开展中使用,输入一个分钟数后开始进行倒计时。
<h6 style="color: #f00;" id="ExamNeedTime"></h6>
var intNeedTime = 50; // 传入分钟数,示例50分钟
var timer = null;
var new_h = parseInt(intNeedTime/60);
var new_m = intNeedTime%60;
var new_s = '00';
timer = setInterval(function(){
--new_s;
if(new_s < 0){
--new_m;
new_s = 59;
}
if(new_m < 0){
--new_h;
new_m = 59;
}
if(new_h < 0){
new_h = 0;
new_m = 0;
new_s = 0;
clearInterval(timer);
$.messager.confirm('提示', '考试已到规定结束时间,系统自动提交试卷信息!', function (r) {
alert('提交')
});
}
var lastTime = checkTime(new_h) + ":"+ checkTime(new_m) + ":" + checkTime(new_s);
$('#ExamNeedTime').text(lastTime);
},'1000');
计时器:
普通计时器效果和倒计时思路相同,原进行相减操作改为相加并修改判断即可,我们这里来监听视频(最近业务为考试系统,观看视频达到一定时间后即可开始考试)
<video id="videoDom" controls="controls" autoplay></video>
var theVideo = document.getElementById('videoDom');
var DST_Counter = 0; // 本次学习
var Total_Counter = 0;// 累计学习
// 监听视频播放
$("#videoDom").bind("timeupdate",function(event){
// 本次学习
DST_Counter = Math.floor(this.currentTime);
$('#TheStudyTime').text(checkTime(parseInt(DST_Counter / 60 / 60)) + ':' + checkTime(parseInt(DST_Counter / 60) % 60) + ':' + checkTime(DST_Counter % 60));
// 累计学习
Total_Counter = totalNum;
Total_Counter += DST_Counter;
$('#GrandTotal').text(checkTime(parseInt(Total_Counter / 60 / 60)) + ':' + checkTime(parseInt(Total_Counter / 60) % 60) + ':' + checkTime(Total_Counter % 60));
});
function checkTime(i){
if (i < 10) {
i = '0' + i
}
return i;
}