曲の長さのカウントダウン用に以下の JavaScript があります。私はphpページでそれを使用します。
私が抱えている問題は、ページを更新したとき、または曲の再生中にページに移動したときに、残りの長さが得られないことです。曲全体のカウントダウンを取得します。
たとえば、2 分間の曲の場合。午前 9 時 38 分に開始され、午前 9 時 39 分にページに移動した場合、2 分ではなく 1 分のカウントダウンが必要です。
したがって、本当の問題は、サーバー側で曲の残りの長さを追跡するにはどうすればよいかということだと思います。
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'];?>);