Google地图图例中的图像和文字重复

时间:2019-04-20 04:55:06

标签: google-maps

我用图例构建了此Google地图。请参见下面的代码。 图例中的元素有时会在所有设备上的第一次加载时被复制,而有时在页面刷新时被复制。 我在Stackoverflow(see there)上也看到了类似的问题,但没有找到解决方案。我删除了一些多余的代码。

        function initMap() {
            map = new google.maps.Map(document.getElementById('map'), {
                zoom: 8,
                center: centerCords
            });
var legend = document.getElementById('legend');
        for (var key in icones) {
          var type = icones[key];
          var name = type.name;
          var icon = type.icon;
          var div = document.createElement('div');
          div.innerHTML = '<img src="' + icon + '"> ' + name;
          legend.appendChild(div);
        }
addMarkerInfo();
map.controls[google.maps.ControlPosition.LEFT_BOTTOM].push(legend);
        }

1 个答案:

答案 0 :(得分:1)

已通过IssueTracker中的此错误进行了解答:https://issuetracker.google.com/131115682

我注意到,除了Maps Javascript回调外,您两次调用initMap()函数:

第一:

 <script async defer
    src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap">

第二个:

window.onload = function () {
    initMap();
};

我尝试删除第二个通话,图例不再重复。