Javascript 仅在需要时向Google地图添加标记
我能够在网站上显示谷歌地图,为当前地图区域加载数百个标记并显示它们。问题在于,当地图被放大/缩小或移动时,地图区域会发生变化,如何进行操作 地图的一部分与以前相同,地图上的标记也一样。但地图中有一部分是新的,应该添加新的标记 现在我正在做最简单的解决方案,清除所有标记,检索当前地图区域的标记并添加它们。这会在标记上产生闪烁效果(很明显),因为之后会立即清除并添加 处理这种情况的有效方法是什么Javascript 仅在需要时向Google地图添加标记,javascript,google-maps,Javascript,Google Maps,我能够在网站上显示谷歌地图,为当前地图区域加载数百个标记并显示它们。问题在于,当地图被放大/缩小或移动时,地图区域会发生变化,如何进行操作 地图的一部分与以前相同,地图上的标记也一样。但地图中有一部分是新的,应该添加新的标记 现在我正在做最简单的解决方案,清除所有标记,检索当前地图区域的标记并添加它们。这会在标记上产生闪烁效果(很明显),因为之后会立即清除并添加 处理这种情况的有效方法是什么 有没有办法检查标记是否已添加到地图中?您可以使用标记群集或群集算法对缩小时靠近的标记进行分组,并在放大时
有没有办法检查标记是否已添加到地图中?您可以使用标记群集或群集算法对缩小时靠近的标记进行分组,并在放大时取消分组。它可以显著减少数据库查询时间和地图绘制时间。kd树是一个很好的解决方案。要检查标记是否已添加到地图,请调用标记的getMap方法,如果它返回一个地图对象,则该标记已被添加 要检查标记是否位于地图的可见区域,可以在地图上调用getBounds方法,该方法返回LatLngBounds。然后调用传递标记坐标的返回LatLngBounds的contains方法 希望这有帮助