这是我的Google地图“设置”
我想扩展并显示多达10k的标记(使用MarkerClusterer)。什么是最好的方法?
我正在考虑将所有标记数据写入文件(作为javascript数组或xml)并从那里读取javascript,因为查询10k位置的数据库是不切实际的。你有其他建议吗?
我应该使用相同的循环槽阵列并一次放置一个标记吗? 我查看了kml图层,但似乎我无法通过标记导航(我有一个上一个/下一个位置功能),我可能无法使用infobox.js?
有什么建议吗?
答案 0 :(得分:2)
正如@geocodezip所提到的那样,查看该文档,而不是查看群集解决方案,请查看Viewport Marker Management部分。
如果您的数据库支持地理空间查询,则只要地图为idle
,您就可以请求仅返回给定边界内的标记。
google.maps.event.addListener(map, 'idle', function(){
var bounds = map.getBounds(); //returns an object with the NorthEast and SouthWest LatLng points of the bounds
//make the AJAX request passing in your `bounds`
/*in the AJAX callback remove the current markers from the map and the cluster object,
and add the new ones along with their event handlers and re-add to the cluster object as well*/
});