debugging 谷歌MapV3:页面上有多个Map,导致标记缺失

llmtgqce  于 2023-04-12  发布在  其他
关注(0)|答案(1)|浏览(123)

我在一个页面上有多个GoogleMap。

场景:

  • 当在页面上单独使用时,Map按预期工作。
  • 我在同一页上使用了两张Map。
    工作案例::)
  • 第一个贴图使用无样式标记(默认标记)
  • 第二张标测图使用样式标记[参考:Styled Markers ]
  • 两个标测图均显示了预期的标记。
  • 参考代码[http://pastebin.com/ciphPXZc]
    问题案例::(
  • 第1张标测图使用样式标记[参考:]
  • 第二个贴图使用无样式标记(默认标记)
  • 第1张图显示根本没有标记
  • 参考代码[http://pastebin.com/HyYhgsbm]

我无法理解Map是如何相互影响的,即使变量名没有冲突。
另外,Map的顺序如何影响它?

vdgimpew

vdgimpew1#

这是因为你加载API和StyledMarker扩展的方式。这两个操作只做一次,并且尽可能早(最好是在<head>部分)。

<html>
<head>
    <script src="http://maps.googleapis.com/maps/api/js?v=3.6&sensor=true&language=en-us"></script>
    <script src="/site_media/js/google_maps/StyledMarker.js"></script>
</head>

不要在其他地方包含脚本。
在第一个示例中,您加载API,然后再次加载,然后是StyledMarker扩展,然后调用map1()map2()。但是因为StyledMarker扩展是最后加载的,所以一切正常。
在第二个示例中,您加载了API和StyledMarker扩展,然后再次加载API,然后调用map1()并尝试使用样式化标记。然而,第二次加载API很可能已经删除了StyledMarker扩展。

相关问题