【发布时间】:2012-07-09 22:55:38
【问题描述】:
我正在尝试实施 Google 地图。 第一部分是将地图居中到一个特定的地址,效果很好。
我的下一个问题是,我必须根据对商店名称的搜索,在地图上为商店放置一个标记。标记可能应该连接到搜索结果,以便在单击时显示信息气泡。如何着手和做到这一点,我完全无能为力。
【问题讨论】:
标签: javascript html google-maps google-maps-api-3 maps
我正在尝试实施 Google 地图。 第一部分是将地图居中到一个特定的地址,效果很好。
我的下一个问题是,我必须根据对商店名称的搜索,在地图上为商店放置一个标记。标记可能应该连接到搜索结果,以便在单击时显示信息气泡。如何着手和做到这一点,我完全无能为力。
【问题讨论】:
标签: javascript html google-maps google-maps-api-3 maps
您的步骤对我来说似乎没问题,我假设搜索商店名称转到您的服务器并且您返回一些带有商店名称和地址的结果,然后您使用 Google Geocoding API 和获取 lat/lng 坐标并将标记放在地图上,以下是我可能会使用的步骤:
Google Geocoding API best practices 建议您应该存储地理编码,这样您就不必每次都查询 Google 的服务器。为此,您需要修改您的后端,以便它还存储地理编码以及商店详细信息,并且在搜索结果中您可以返回地理编码(如果有)。
附带说明,您可以使用GMaps JavaScript 库来轻松操作地图。
更新
上述解决方案在您修改后的场景中完美运行。让我重新表述一下流程:
map.addMarker({...})。要实现上述步骤,您需要熟悉 Maps JS 库以及 JavaScript 和 Ajax/JSONP。请记住,您的所有地理编码请求(我认为是 JSONP)都是异步的,只有在您可以使用响应时(通常在回调中)才应该调用标记放置代码。 GMaps 库示例非常容易上手。我希望这个解释应该足以解决您的问题,如果它对您有帮助,那么您可以考虑将其标记为答案。
【讨论】: