【问题标题】:Google map v3 API change today?谷歌地图 v3 API 今天改变了吗?
【发布时间】:2023-03-23 15:23:01
【问题描述】:

我的地图重绘似乎失败了,因为(至少)我一直在通过

动态设置中心
var currCenter = gmap.getCenter();

然后:

var mapOptions = {
    center: new google.maps.LatLng(currCenter.ob, currCenter.pb),
    zoom: currZoom,
    mapTypeId: google.maps.MapTypeId.ROADMAP
};

今天早上出现currCenter.ob 突然变成undefined。现在看起来是 pb & qb 而不是 ob & pb。我正在尝试修复代码,是否还有其他人知道已更改的内容?

编辑:它们是我不应该使用的未记录的 API 字段,没关系,我用下面的信息修复了它。谢谢。

【问题讨论】:

标签: javascript google-maps google-maps-api-3


【解决方案1】:

我假设 gmap 是一个谷歌地图对象。如果是这样的话,那么getCenter 已经返回了一个LatLng 对象,所以通过

创建一个新对象
new google.maps.LatLng()

有点没用,你可以直接使用currCenter

【讨论】:

    【解决方案2】:

    问题是 Api Google maps 不断改变这个值 (ob, .pb) 到纬度和经度,你必须使用 lat()lng() 函数有一个稳定的版本

    var mapOptions = {
    center: new google.maps.LatLng(currCenter.lat(), currCenter.lng()),
    zoom: currZoom,
    mapTypeId: google.maps.MapTypeId.ROADMAP
    

    };

    你好!

    【讨论】:

    • 非常感谢!我在找这个!
    【解决方案3】:

    回答你的问题。是的。 Google Maps API 昨晚确实发生了变化。我正在做与您相同的事情(调用 .ob 和 .pb),但发现我必须在代码中分别将它们更改为 .pb 和 .qb 才能获得 Lat 和 Long。

    【讨论】:

      【解决方案4】:

      将它们重写为 .lng() 和 .lat() 而不是 .ob、.pb、.qp。如果你还想使用非官方的成员名,我相信这些成员应该更稳定。

      【讨论】:

        猜你喜欢
        • 2012-11-09
        • 1970-01-01
        • 2012-12-19
        • 2012-08-03
        • 2014-04-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多