我目前在地图上使用GeoJSON加载国家/地区边界和信息,以及一些应该附加到这些国家/地区的内部数据。数据通过以下代码加载到两个数据层中:
Data[MapType] = new google.maps.Data();
Data[MapType].loadGeoJson(jsonPath, {idPropertyName:geoJSONID});
Data[MapType].setStyle(dataStyle);
Data[MapType].setMap(Map);
工作正常,数据正在加载,鼠标悬停事件处理程序响应良好。但是我想在geoJSON文件加载和显示完成后隐藏加载器覆盖,但到目前为止我还没有找到一种方法来听这种事件。
我在another stackoverflow thread上看到KML关于收听metadata_changed
事件的内容,但它并没有在地图上触发任何内容。 API参考也没有多大帮助。
您是否知道如何知道geoJSON数据何时完成加载和显示?
非常感谢。
答案 0 :(得分:2)
地图对象有一个idle
状态,应该可以像以下一样访问它:
google.maps.event.addListenerOnce(map, 'idle', function() {
console.log('loaded');
});
答案 1 :(得分:0)
This question扩展了datafunk的答案,并采用了一种解决方法来利用空闲状态。 (会添加评论但链接)