2016-05-16 82 views
1

在小縮放級別上,一個地方會顯示兩次或更多(世界地圖重複水平)。當我用座標在地圖上放置標記(例如-32.05604,115.74718)時,我會多次在地圖上看到它。這是正常的。infowindow在小縮放級別上的位置錯誤。谷歌地圖api v3

但是,如果我試圖顯示infowindow鼠標懸停我會得到錯誤的行爲。 Infowindow將始終顯示在我的一個標記附近,並且不會接近其他標記,與鼠標光標下的標記無關。

查看示例:(嘗試將鼠標移動到地圖上的左側標記)。 https://jsfiddle.net/m3wpk1gr/1/

如何在鼠標下顯示infowindow標記?

我的代碼:

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(); 

回答

0

恐怕沒有什麼可以做,以得到期望的結果(該位置是正確的,所以當位置存在多次在地圖上的API有做決定)。

你可以做什麼:設置標記的optimized - 選項來false,那麼他們將無法在較低的放大水平反覆

+0

謝謝,@ DR-躑躅。好難過。 – ArsenyN