2
我有一个歌曲长度倒计时的JavaScript下面。我在一个php页面中使用它。歌曲长度倒计时,需要跟踪剩余长度
我的问题是,当我刷新页面,或者当我在歌曲播放时进入页面时,我将无法获得剩余的长度。我会得到完整的歌曲lentgh倒计时。
例如,2分钟的歌曲。如果它在上午9:38开始,并且我在上午9:39进入该页面,那么我需要1分钟倒计时,而不是2分钟。
所以我想真正的问题是:如何在服务器端跟踪剩余歌曲长度?
var startTime, countAmt, interval;
function now() {
return ((new Date()).getTime());
}
function tick() {
var elapsed = now() - startTime;
var cnt = countAmt - elapsed;
var elem = document.getElementById("countdown");
if (cnt > 0) {
elem.innerHTML = minute(Math.round(cnt/1000));
} else {
elem.innerHTML = "0:00";
clearInterval(interval);
}
}
function startTimer(secs) {
document.getElementById("countdown").innerHTML = minute(secs);
countAmt = secs * 1000;
startTime = now();
interval = setInterval(tick, 1000);
}
function minute(secs){
minVar = Math.floor(secs/60); // The minutes
secs = secs % 60; // The balance of seconds
if (secs < 10) {
secs = "0"+secs;
}
return minVar+":"+secs;
}
startTimer(<?php echo $stream['info']['length'];?>);
document.getElementById("countdown").innerHTML = minute(<?php echo $stream['info']['length'];?>);
创建一个服务器端的网页,其中获得的POST,GET数据并存储该值或者会话或数据库, 使用定时器做一个Ajax调用该服务器页每一秒。 页面刷新时,无论您在哪里存储数据,都会为会话或数据库提取数据。 – 2013-03-22 15:56:38
感谢prabeen吉里,但不幸的是我不知道我该怎么做。如果歌曲长度是2分钟,则页面刷新时ajax将始终返回2分钟。你有什么建议? – trogne 2013-03-22 19:22:38