我正在开发一个测试引擎web应用程序。用户将有一定的时间回答问题。我想创建一个倒计时时钟,然后测试结束。我现在正在使用javascript,但在浏览器中面临刷新和后退按钮的问题。以下是javascript:
<script>
function countDown (count) {
if (count > 0) {
var hours = Math.floor(count/3600)
var minutes = Math.floor(count/60) - (hours*60)
var seconds = count - (minutes * 60) - (hours*3600)
var d = document.getElementById("countDiv");
d.innerHTML = hours + ":" + minutes + ":" + seconds;
else
document.location = "test_finished.html";
}
countDown(<%=@totaltime%>);
</script>
如何禁用刷新和后退按钮或其他解决方法??
您不能使用JavaScript强制执行此类操作。
一种方法是在数据库中保存测试开始日期时间的记录,一旦用户开始测试,就会设置开始时间,加载时会使用它计算初始计时器值,这样你就可以让后台和刷新正常工作,并且倒计时计时器总是准确的。