【问题标题】:Google map overlapping of markers in the same locations and not visible to user谷歌地图在相同位置重叠标记,用户不可见
【发布时间】:2014-02-12 08:34:55
【问题描述】:

我的谷歌地图脚本有问题,同一位置上的标记重叠且用户不可见。我尝试使用此链接https://github.com/jawj/OverlappingMarkerSpiderfier 中提供的 OverlappingMarkerSpiderfier 编辑我的脚本。但存在重叠问题。没有改善。

以下函数将弹出窗口与标记绑定。我已编辑该函数以使用 OverlappingMarkerSpiderfier 删除同一位置的标记重叠。

function bindInfoWindow(marker, map, infoWindow, contentString)
    {
        var oms = new OverlappingMarkerSpiderfier(map);
        oms.addMarker(marker);
        oms.addListener(marker, 'mouseover', function() {
        infoWindow.setContent(contentString);
        infoWindow.open(map, marker);
        $("#tabs").tabs();
         });
    }

    // highlighting a marker

以下是我编辑的谷歌地图的 jsfiddle 链接。请告诉我我在哪里做错了。

http://jsfiddle.net/7AKuX/11/

【问题讨论】:

  • 我什至看不到地图工作,您是否尝试过使用 Google Maps v3 API 的集群功能?它用于将引脚分组在同一位置:developers.google.com/maps/articles/toomanymarkers?hl=en
  • 这个小提琴有用吗???它显示错误标记[i] = marker;
  • 在 html 页面中不能正常工作。但不知道为什么在 jsfiddle 中不能正常工作。
  • 我已经在 jsfiddle 的外部资源选项卡上添加了所有必要的链接。然后也没有加载谷歌地图。但是 html 中的代码加载了谷歌地图。请帮我。我会为你投票。

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


【解决方案1】:

您为每个标记创建一个新的oms-instance,而是为所有标记使用相同的实例:

http://jsfiddle.net/5VFeJ/

【讨论】:

  • 非常感谢。我更新了jsfiddle.net/5VFeJ 链接以提出更多疑问。如何将 onclick 事件更改为鼠标悬停事件以在同一位置显示多个标记?请帮忙
  • 我不确定你的意思,对我来说,jsfiddle.net/5VFeJ 鼠标悬停已经起作用了。
【解决方案2】:

Google 地图开发者 API 提供聚类方法来查看重叠标记及其内容。参考this link,否则使用OverlappingMarkerSpiderfier

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-05-23
    • 2010-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多