如何正确使用 Google Maps API? [复制]
Posted
技术标签:
【中文标题】如何正确使用 Google Maps API? [复制]【英文标题】:How to properly use Google Maps API? [duplicate] 【发布时间】:2013-03-13 20:05:31 【问题描述】:我发现,在使用 Google Maps API 时,结果会不时发生变化。改变我的意思是响应对象。基本上我正在查询谷歌地图以获取基于用户输入的地点列表(也使用 jQueryUI 自动完成)。我正在尝试正确获取从 Google Maps API 返回的坐标,但包含精确|近似坐标的属性似乎不时发生变化。
例如:在早期,我能够获得像 item.geocode.geometry.location.Ya
和 item.geocode.geometry.location.Za
这样的坐标。然后我的搜索表单坏了,因为 Google 将其更改为 item.geometry.location.mb
和 item.geometry.location.nb
。
关于如何以正确、稳定的方式实现这一点有什么建议吗?
【问题讨论】:
【参考方案1】:切勿使用您找到的 Maps API 对象的未记录属性。每当修改 Maps API 时,这些都会发生巨大变化。
相反,只使用记录在案的方法和属性。
您的item.geocode.geometry.location
是LatLng
,因此您可以调用它的.lat()
和.lng()
方法:
var location = item.geocode.geometry.location;
var lat = location.lat();
var lng = location.lng();
【讨论】:
非常感谢!你是对的,+1 并被接受。 在 API V3 中,我使用了:var lat = location.nb; var lng = location.ob;
@Imperative - 不,这正是你应该不做的。您正在使用在调试器中找到的未记录属性。它们可能在本周工作,但只要 Google 重新编译 Maps API 代码,它们就会随机更改。请改用记录在案的 lat()
和 lng()
方法。
该死,这很容易。谢谢迈克尔!以上是关于如何正确使用 Google Maps API? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 jQuery 隐藏 Google Maps Api 标记
使用 jquery 调整 Google Maps api v3 DIV 的大小 - 磁贴未正确刷新
Google Maps API fitBounds 未正确设置缩放