【问题标题】:Google Maps V3 : Multiple maps on a page resulting in missing markers (DEBUG)?Google Maps V3:页面上的多个地图导致缺少标记(DEBUG)?
【发布时间】:2012-03-06 06:23:24
【问题描述】:

我在一个页面上有多个谷歌地图。

场景:

  • 在页面上单独使用时,地图会按预期工作。
  • 我在同一页面上使用了 2 个地图。

工作案例: :)

问题案例: :(

即使变量名没有冲突,我也无法理解映射是如何相互影响的。

另外,地图的顺序如何影响它?

请帮忙,如果我遗漏了什么,请询问更多信息。

【问题讨论】:

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


    【解决方案1】:

    这是因为您加载 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 扩展。

    【讨论】:

    • 我知道我要多次添加 css,但这有什么关系,因为客户端浏览器只会下载一次。我没听懂你。
    • 这似乎与namespace 有关,因为我使用的是相同的命名空间,所以东西会相互覆盖。
    • 我会试试看,结果会回来的。
    • 这解决了问题,我一开始也是这么想的,但是工作案例让我想到了别的东西。
    猜你喜欢
    • 2014-07-20
    • 2013-07-09
    • 2012-06-26
    • 1970-01-01
    • 2023-03-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-31
    相关资源
    最近更新 更多