我正在使用Highcharts库来显示网站上的值。我的表的xAxis
是日期,在Firefox和Chrome上运行良好,但在Safari浏览器上无效。
我怀疑使用Safari的JavaScript中Date
对象的解释与其他浏览器不同。
¿有些提示?
这是我的代码:
<script>
myChart = new Highcharts.chart('containerTemperatura', {
title: {
text: 'Evolución de la Temperatura'
},
xAxis: {
type: 'datetime',
dateTimeLabelFormats: {
minute: '%H:%M',
hour: '%H:%M'
}
},
yAxis: {
title: {
text: 'ºC'
}
},
series: [{
name: 'TEMPERATURA',
color: '#808080',
data:(function(){
var data = [];
<?php
for($i = 0; $i < count($ultimasLecturas); $i++){
?>
// EXAMPLE: $ultimasLecturas[$i]->fechaHora = "2017-08-12 12:34:04"
var $fecha = new Date("<?php echo $ultimasLecturas[$i]->fechaHora;?>");
// a compensation for different timezones
$fechaProcesada = $fecha.getTime() + <?php echo $UTCmilseg; ?>;
data.push([$fechaProcesada,<?php echo $ultimasLecturas[$i]->temperatura;?>]);
<?php
} ?>
return data;
})()
}]
});
</script>
答案 0 :(得分:0)
我解决了添加此JavaScript函数的问题:
function parseDate(inputTimestamp){
var parts = inputTimestamp.split(/[ \/:-]/g);
var dateFormated = parts[1] + "/" + parts[2] + "/" + parts[0] + " " + parts[3] + ":" + parts[4] + ":" + parts[5];
return new Date(dateFormated);
}
改变这条线......
var $fecha = new Date("<?php echo $ultimasLecturas[$i]->fechaHora;?>");
对于这一行:
var $fecha = parseDate("<?php echo $ultimasLecturas[$i]->fechaHora;?>");