我在使用 Google 注释的时间线时遇到问题。我有这个在 jQuery 就绪函数中调用的函数(如下所示):
//creates an annotated timeline
function graphAnnotatedTimeLine(url) {
jQuery.get(url, function(returned_data) {
//parse returned_data ...
//build data table
var dataTable = new google.visualization.DataTable();
dataTable.addColumn('datetime', columnHeadings[0]);
dataTable.addColumn('number', columnHeadings[1]);
//populate table
for(var i = 0; i < rawData.length; i++) {
var parsedData = data[i].split(",");
dataTable.addRow([new Date(parsedData[0]), parseFloat(parsedData[1])]);
}
//draw graph
var options = {displayAnnotations: false,
allowRedraw: true,
legendPosition: 'newRow',
displayZoomButtons: false,
wmode: 'transparent'};
var chart = new google.visualization.AnnotatedTimeLine(document.getElementById('chart-div'));
chart.draw(dataTable, options);
});
}
在就绪函数中调用如下:
$.ready(function() {
//generate url string
google.setOnLoadCallback(graphAnnotatedTimeline(url));
self.setInterval('updateGraph', 60000);
//more stuff
});
所以在准备好的时候,我调用它来绘制第一组数据,然后设置一个更新函数,每分钟调用一次。update 函数所做的一切与 ready 函数基本相同:构建一个 url 字符串并使用该 url 调用图形函数。我遇到的问题是它在启动时不显示图表。但是,一旦调用了更新,之后它就会显示正常。有没有人可以给我一些关于为什么会发生这种情况的现场信息?