【问题标题】:Google Maps API - undefined ROADMAP property?Google Maps API - 未定义的 ROADMAP 属性?
【发布时间】:2011-11-12 09:18:18
【问题描述】:

我正在我的网站中实现两种不同类型的谷歌地图。

  1. 第一个使用以下 MapTypeID 简单地显示带有标记的预定义位置:

    mapTypeId:google.maps.MapTypeId.ROADMAP

  2. 第二个允许用户通过在地图上拖放标记等进行交互。

我这样调用我的 API:

<script src="http://maps.google.com/maps?file=api&v=2.x&sensor=false&key=ABQIAAAAfK8z5AsiUZwKZF5CkZMF6BTAb5FWVJrlydeWm3IWDEdBI1HaUhTpyn3_qR2q3IPbPnQKou9lkKVqIA" type="text/javascript"></script>

启动我的第一张地图时,我收到此错误:

Uncaught TypeError: Cannot read property 'ROADMAP' of undefined

如果我以这样的替代方式加载 Google Maps API:

<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>

第一张地图的错误消失了,但我现在在启动第二张地图时遇到了这个错误:

Uncaught ReferenceError: GOverlay is not defined
Uncaught ReferenceError: GControl is not defined
Uncaught ReferenceError: GControl is not defined
Uncaught ReferenceError: GCopyright is not defined

我认为这个问题与需要旧版本的谷歌地图 API 的地图有关。是否可以加载两个单独的谷歌地图 API?

谢谢

【问题讨论】:

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


    【解决方案1】:

    google.maps.MapTypeId.ROADMAP 是谷歌地图 v3 的东西,但你所做的一切都是 v2 的东西。请改用google.maps.MapType.G_NORMAL_MAP。 (然后,考虑将整个东西升级到 v3。)

    【讨论】:

    【解决方案2】:

    如果您使用 Google Maps v3

    谷歌地图 api 的 javascript 包含已更改:

    而不是: http://maps.google.com/maps/api/js?sensor=false

    必须有: https://maps.googleapis.com/maps/api/js?sensor=false

    请参考此链接 https://developers.google.com/maps/documentation/webservices/

    【讨论】:

      【解决方案3】:

      而不是使用这个:

      mapTypeId:google.maps.MapTypeId.ROADMAP

      使用这个:

      mapTypeId: '路线图'

      【讨论】:

      • 我不认为这是正确的,因为google.maps.MapTypeId.ROADMAP 是有效且记录在案的 Google Maps JavaScript API v3 常量。看看developers.google.com/maps/documentation/javascript/…。这个问题的最初问题是作者混合了v2(目前已弃用和死)和v3代码。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-19
      • 1970-01-01
      • 1970-01-01
      • 2017-05-05
      • 2022-06-18
      • 1970-01-01
      相关资源
      最近更新 更多