我正在使用 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>
最佳答案
我解决了添加此 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;?>");
关于javascript - HighCharts 无法在 Safari 上运行,但在 Firefox 和 Chrome 上运行良好,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45906576/