您好我需要通过javascript使用给定的XML来减去当前的日期和时间日期。
这段代码的用途是在几分钟和几秒内显示歌曲流的剩余时间
然后使用javascript解析日期并以毫秒为单位进行转换,当前日期也将以ms为单位。
在Chrome日期显示我完美,但在Mozilla和IE NaN控制台显示我并给出错误。 我不明白,如果我已经解析了日期,因为它只适用于Chrome。一定是个错误。
PHP(我画一首歌的开始日期)
<?php
$xml = @ simplexml_load_file('http://www.example.com');
foreach ($xml as $track){
$startTime = $track->starttime;
$songDuration = $track->playduration;
}
?>
JAVASCRIPT: var花费javascript
var tiempoComienzo= "<?php echo $startTime ?>";
var cancionDuracion="<?php echo $songDuration ?>";
//parse delivered date from php
var d = new Date(Date.parse(tiempoComienzo));
//PHP get the date in milliseconds
var resultPHPms = d.getTime();
//get the current date
var f = new Date();
//step the current date to milliseconds
var resultJSms = f.getTime();
//adding the date of the song to the length of the song
var inicioMasCancion=parseInt(cancionDuracion) + parseInt(resultPHPms);
//It is the challenge to the current date
var TiempoRestante=inicioMasCancion-parseInt(resultJSms);
//pass the result to seconds
seconds=(TiempoRestante/1000)
var container = document.getElementById('time');
var seconds = parseInt(seconds+7);
//step seconds to minutes and seconds
var minutes = parseInt( seconds / 60 ) % 60;
var seconds = seconds % 60;
var contadorDeTiempo=(minutes < 10 ? "0" + minutes : minutes) + ":" + (seconds < 10 ? "0" + seconds : seconds);
countdown(seconds);
功能倒计时:
<script>
var timer;
function countdown(seconds) {
seconds--;
if(seconds >= -1) {
container.innerHTML =contadorDeTiempo;
}
}
timer = setInterval(countdown, 1000);
</script>
HTML:
<span id='time'></span>
在Chrome中,它完美展现并且完美无缺。但是在Mozilla和IE控制台NaN中显示了它,特别是在这一行:
var d = new Date(Date.parse(tiempoComienzo));
我怎么解决?生成的XML日期如下:
2015-12-20 12:45:33.17
非常感谢你的帮助