infowindow在小缩放级别上的错误位置。谷歌地图api v3

时间:2016-05-16 18:33:59

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

在小的缩放级别上,一个地方将显示两次或更多(世界地图水平重复)。当我使用坐标(例如-32.05604,115.74718)在地图上放置标记时,我会在地图上多次看到它。这很正常。

但如果我试图在鼠标悬停时显示infowindow,我会得到错误的行为。 Infowindow将始终显示在我的一个标记附近,并且从不接近其他标记,与鼠标光标下的标记无关。

请参见此处的示例:(尝试在地图上将鼠标移动到左侧标记处)。 https://jsfiddle.net/m3wpk1gr/1/

如何显示鼠标下的标记信息?

我的代码:

function initialize() {

    var myLatLng = new google.maps.LatLng(-32.05604, 115.74718),
        myOptions = {
            zoom: 1,
            center: new google.maps.LatLng(-32.05604, 0)
        },
        map = new google.maps.Map(document.getElementById('map-canvas'), myOptions),
        marker = new google.maps.Marker({
            position: myLatLng,
            map: map
        });

    marker.setMap(map);

    var iw = new google.maps.InfoWindow();
    marker.addListener('mouseover', function() {
        iw.setContent('InfoWindow');
        iw.open(map, this);
    });
    marker.addListener('mouseout', function() {
        iw.close();
    });

}

initialize();

1 个答案:

答案 0 :(得分:0)

我担心你无法做任何事情来获得理想的结果(位置是正确的,所以当位置在地图上存在多次时,API必须做出决定)。

您可以做什么:将标记的optimized - 选项设置为false,然后不会以较低的缩放级别重复这些选项