考试剩余时间倒计时

方法:

<script type="text/javascript">

$(function () {

//默认加载定时器
dtstart = new Date();
setTimeout(function () { TestTime(dtstart, dtstart, "@sumss", 0); });

})

var t = $("#lefttimer");//剩余时间显示标签

//第一次循环

function TestTime(dtstart, dtup, sums, n) {

dt = new Date();
var dates = Math.abs(dt - new Date(dtstart)) / 1000;//当前时间与考试开始时间间隔
var sss = @sumss - dates;//考试剩余总秒数
var ss = parseInt(sss % 60);
var hh = parseInt(sss / 60 / 60 % 24);
var mm = parseInt(sss / 60 % 60);

if (ss < 10 && ss >= 0) {
ss = "0" + ss;
}
if (hh < 10 && hh >= 0) {
hh = "0" + hh;
}
if (mm < 10 && mm >= 0) {
mm = "0" + mm;
}

t.html(hh+ "&nbsp;:&nbsp;" + mm + "&nbsp;:&nbsp;" + ss);
var dt1 = new Date();
setTimeout(function () { TestTimes(dt, dt1, sss); }, 1000);
}

//不在考试期间修改时间时
function TestTimes(dtstart, dtup, sums) {

dt = new Date();
var s = Math.abs(dt - dtup) / 1000;//当前时间和上一次循环的当前时间相差秒数

if (s > 5 || s < -5) {
TestTimes2(dtstart, dtup, sums);
}
else {
var dates = Math.abs(dt - dtstart) / 1000;//当前时间与考试开始时间间隔
var sss = sums - dates;//考试剩余总秒数
var ss = parseInt(sss % 60);
var hh = parseInt(sss / 60 / 60 % 24);
var mm = parseInt(sss / 60 % 60);
if (ss < 10 && ss >= 0) {
ss = "0" + ss;
}
if (hh < 10 && hh >= 0) {
hh = "0" + hh;
}
if (mm < 10 && mm >= 0) {
mm = "0" + mm;
}

t.html(hh + "&nbsp;:&nbsp;" + mm + "&nbsp;:&nbsp;" + ss);

if (hh <= 0 && mm <= 0 && ss <= 0) {

setTimeout(function () { timeisUp(); }, 1000);
}
else {

var dt1 = new Date();
var s = Math.abs(dt - dt1) / 1000;
if (s > 6 || s < -6) {
TestTimes2(dtstart, dtup, sums);
}
setTimeout(function () { TestTimes(dt, dt1, sss); }, 1000);
}
}

}

//在考试期间修改服务器时间

function TestTimes2(dtstart, dtup, sums) {

//获取服务器当前时间

$.post("/Student/Attestation/GetNoew", function (data) {
var dt = new Date();
var dates = Math.abs(new Date(data) - new Date("@startTime")) / 1000;//当前时间与考试开始时间间隔
var sss = @sumss -dates;//考试剩余总秒数
var ss = parseInt(sss % 60);
var hh = parseInt(sss / 60 / 60 % 24);
var mm = parseInt(sss / 60 % 60);
if (ss < 10 && ss>=0) {
ss = "0" + ss;
}
if (hh < 10 && hh >= 0) {
hh = "0" + hh;
}
if (mm < 10 && mm >= 0) {
mm = "0" + mm;
}

t.html(hh + "&nbsp;:&nbsp;" + mm + "&nbsp;:&nbsp;" + ss);
if (hh <= 0 && mm <= 0 && ss <= 0) {

setTimeout(function () { timeisUp(); }, 1000);
}
else {
var dt1 = new Date();
setTimeout(function () { TestTimes(dt, dt1, sss); }, 1000);
}
})

}

</script>

时间: 2024-12-14 17:38:25

考试剩余时间倒计时的相关文章

一个付款剩余时间倒计时的功能

今天在做一个支付界面倒计时功能时碰到如下问题: 点击提交订单跳转到确认订单(支付)页面,在顶部有一个倒计时,与此同时,接口返回有创建订单时间字段,根据此字段实现倒计时 实现思路: 将后台获取的时间使用vuex储存,调用:self.$store.state.subOrder.created_at获取到 将后台获取的时间使用Date.parse方法(此方法可以返回 1970/1/1 午夜距离该日期时间的毫秒数.)转化为一个int数值,然后加上倒计时时间(900秒),得到endTime,然后获取当前时

LCD倒计时——笔记

最近想写一个类似于自动化模拟考试的东东,其中有一部分是设置倒计时,时间到则停止答题.每个单元分开实现,最后组装在一起就ok 啦,(分开实现,便于调试啦,个人觉得).花了一个多小时设计和写code,一个多小时debug.嘿嘿... 实现平台:Pycharm 3.4.1  python2.7.8  Qt4.8 pyside 王道先行:(声明这只是一个demo,只是实现倒计时器的显示,其余忽略),用的主要控件是QtGui.QLCDNumber 初始界面: 菜单栏:(1)Set CountDown :设

基于B/S架构的在线考试系统的设计与实现

前言 这个是我的Web课程设计,用到的主要是JSP技术并使用了大量JSTL标签,所有代码已经上传到了我的Github仓库里,地址:https://github.com/quanbisen/onlineexam,如果喜欢的话请帮我Mark个Star. 摘 要 随着计算机软件技术的高速发展,现代社会正快速迈入了一个互联网应用时代,Web应用在各行业都得到了广泛的应用,如小型公司的运销存管理系统,高校的教务管理系统等都是通过B/S架构搭建的Web应用.在过去的几年中,在线考试系统应用在很多行业都得到了

在线考试系统视频教程和源码

购买视频教程QQ:1416759661  淘宝网担保交易 安全便捷 视频教程是高清完整版 放心购买 安心学习 旺旺: QQ: 点击购买 夜鹰教程的忠实粉丝们,经过几周的努力,夜鹰教程网在线考试系统视频教程终于录制完毕了,本套教程重点讲解了在线考试系统的数据库设计和程序开发,主要实现的功能包括的试题的新增和维护,题库的管理,考试主体信息的管理和维护,用户的管理和维护,体型全面覆盖了单选题.多选题.判断题.填空题.主观题(例如:作文),,考试的同时还有倒计时功能.此考试系统实现了主观题人工阅卷,非主

jquery倒计时(仿团购)转至 http://justcoding.iteye.com/blog/2210962

倒计时一般是用来表示未来某一时刻距现在时刻还剩多少时间.倒计时在WEB上应用非常广泛,如考试系统倒计时,团购网站中的优惠活动倒计时等等.今天,我们来使用jQuery实现一个简单的倒计时功能. 本文以团购网站的倒计时为背景,我们知道,网站会给每个优惠活动(商品)定一个结束时间,也就是到期时间,但系统时间到达了结束时间,就意味着活动结束.因此,我们在HTML中就要定义活动的结束时间. <ul class="prolist"> <li><img src=&quo

在线考试系统商业项目

本系统是专门针对各种培训机构,学校,政府行政事业单位,入学考试,课程测试训练等需求开发的在线考试系统,可以在线出题(支持Excel批量试题导入导出,支持试卷图片上传下载),在线考试(支持做题模式,背题模式,可以查看答案及解析,真题模式,考试模式,设置考试时间倒计时,到时自动交卷),自动阅卷(交卷自动统计分数,类似考驾照),题型支持单选题,多选题,判断题,问答题等:项目包含学生考试的前台及管理人员出题,权限及管理的后台2部分,项目功能完善,本系统已在多家大型机构上线使用,系统采用jsp,ssh,e

SSM开发在线考试系统-完整版+视频教程

SSM框架在线考试系统实战开发教程 开发软件: MyEclipse.Eclipse.Idea + JDK8.0以上 + Tomcat8.0 + MySQL5.7以上 [Java开发环境&工具]链接: https://pan.baidu.com/s/1RPQV0RMwd6TUmlzDIghNag 提取码: 9qrv 环境搭建教程: 项目后台管理功能介绍(整理需求): 专业学科管理(专业名称.备注). 考生管理(用户名.密码.所属专业.姓名.联系方式.注册时间). 试题管理(试题类型管理(单选.多选

指南】计算机二级C语言上机操作指南

1 上机考试介绍 全国计算机等级考试二级 C 语言的上机考试时间为90 分钟,考试时间从考生点击"开 始考试并倒计时"按钮考试,由考试系统自动倒计时.倒计时结束前5 分钟,考试系统会自 动报警题型考生考试即将结束并注意存盘.当倒计时结束,考试系统将自动锁定计算机,考 生将不能再进行任何操作.当考生点击"交卷"按钮后,考试系统也会自动锁定计算机. 注意:无论由于什么原因,考试系统在锁定计算机后,考生都要举手报告监考老师,由监考 老师输入密码后,方可离开考场. 上机考试

一个简单的定时器

定义一个全局时间变量 NSTimer *_timer; 创建时间变量 并调用定时器方法 - (void)viewDidLoad { [super viewDidLoad]; _timer = [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(timeClick) userInfo:nil repeats:YES]; [_timer fireDate];//启动定时器 } #pragma mark -