我想在Javascript的帮助下显示我的php变量中的时间
我正在编写一个在线考试模块,我想在其中显示总运行时间
比如说
$time_elapsed
//包含从考试开始到现在所花费的时间如果我有一个div说,
<div id="time"></div>
如何显示动态运行时间,从$time_elapsed
加载每个问题的窗口后
如果你们对此有答案,请.
谢谢
嗨,
您可以使用以下代码来实现目的
JavaScript将是:
var Timer;
var TotalSeconds,TotalMins, secs;
var elapsedtime ;
function CreateTimer(TimerID, Time) {
Timer = document.getElementById(TimerID);
TotalSeconds = Time;
elapsedtime = 0
time = Time
secs = TotalSeconds%60;
TotalMins = Math.floor(TotalSeconds/60)
UpdateTimer()
window.setTimeout("Tick()", 1000);
}
function Tick() {
if(TotalSeconds-elapsedtime>0)
{
elapsedtime += 1;
secs = (elapsedtime%60)-60;
TotalMins = Math.floor(elapsedtime/60)
UpdateTimer()
window.setTimeout("Tick()", 1000);
}
else
alert("time up")
}
function UpdateTimer() {
Timer.innerHTML = TotalMins + ":" + secs;
}
NW 创建一个要显示运行时间的 HTMLdiv。
目录:
<div id='timer' />
<script type="text/javascript">window.onload = CreateTimer("timer", 5);</script>
为参数指定时间限制。它将在时间结束后发出警报。
并在刷新页面后获得时间,请使用 html5 的会话存储
访问 Html5 存储文档以获取更多详细信息。 使用它,您可以在本地临时/永久存储中间值,然后访问您的值用于存储会话的值
sessionStorage.getItem('label')
sessionStorage.setItem('value', 'label')
或永久存储值
localStorage.getItem('label')
localStorage.setItem('value', 'label')
因此,您可以使用html5存储对象在多个页面之间存储(临时)表单数据
这是显示动态时间的方法。要使用其他基于 php 的开始时间,请将行time0 = new Date();
替换为time0 =<?php echo $startTime;?>; which should be in ms since the epoch.
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>elapsed time demo</title>
<script type="text/javascript">
var time0;
function initTime() {
time0 = new Date();
window.setInterval("updateTime()", 1000);
}
function updateTime() {
var timeNow = new Date();
var deltas = (Number(timeNow) - Number(time0))/1000;
var deltah = ("0"+String(Math.round(deltas / 3600))).substr(-2);
deltah = deltah.substr(-2);
deltas %= 3600;
var deltam = ("0"+String(Math.round(deltas / 60))).substr(-2);
deltas = ("0"+String(Math.round(deltas % 60))).substr(-2);
document.getElementById("timedisplay").firstChild.data=deltah+":"+deltam+":"+deltas;
}
</script>
</head>
<body onload="initTime();">
<div> elapsed time <span id="timedisplay">00:00:00</span></div>
</body>
</html>
您的 php 代码应该返回加载页面时经过的时间,但是,javascript 将接管并随着时间的推移增加该时间。
您可以将参数发送到 JavaScript 函数,即显示时间
function display_time(int time)
{
//your code for further integration
}
您可以使用以下方式将参数发送到 JavaScript 函数
//call the function at the time display time
display_time(<?php echo $time_elapsed ?>)