我使用注释图表和google api中的地图,我想知道在用户的clic发布后,在范围更改后是否还要触发功能。我只是在文档中找到了这个google.visualization.events.addListener(chart, 'rangechange', feed_with_chartMap);
,但不仅在clic被重新发布时调用了函数,而且每次调整范围时都会调用该函数。我想用这样的ajax调用来提供我的地图:
function feed_with_chartMap(e){
waiting("Updating the map","loading_map");
$("#loading_map").show();
var start = e.start / 1000;
var end = e.end / 1000;
$.ajax({
url: url_current_json,
data:{
origin:"timeline_json",
query: query_value,
NElat: map.getBounds().getNorthEast().lat(),
NElng: map.getBounds().getNorthEast().lng(),
SWlat: map.getBounds().getSouthWest().lat(),
SWlng: map.getBounds().getSouthWest().lng(),
dateInit: start,
dateEnd: end,
tag: tag_value
},
context: document.body,
success: function(data){
clear_map();
print_map(data.map);
$("#loading_map").hide();
refresh_events("timeline");
}
});
}
如果我用“范围变化”来称呼这个功能。事件真的太慢了,这就是为什么我只想在用户完成更改结束或开始注释图表时调用它。
我希望在我的解释中明白。
答案 0 :(得分:0)
我找到了一个问题的解决方案,我只是在这里发布,如果其他人试图做同样的事情。也许有更好的解决方案,但这个做我想要的,所以没关系。
而不是使用google.visualization.events.addListener(chart, 'rangechange', feed_with_chartMap);
我使用$('#chart_AnnotationChart_rangeControlContainer g[transform]').click(feed_with_chartMap);
当clic在我的图表地图中的一个范围选择器上重新发布时,它会调用我的函数。