我正在繪製一組面向Google地圖的多邊形,並且希望在點擊它時在每個中心彈出InfoWindow彈出窗口。在Google地圖中設置InfoWindow位置
function attach_info_window(polygon, centroid, title){
var info_window = new google.maps.InfoWindow({
content: title,
position: { lat: centroid[0], lng: centroid[1] }
});
google.maps.event.addListener(polygon, 'click', function() {
info_window.open(map, this);
});
}
問題是,窗戶每次都出現在西北角。 'position'參數似乎完全被忽略。我也試着設置上點擊的位置
event.latLng
但是,返回undefined,即使API文檔指定它,這樣也不行。奇怪的是,如果我使用Marker而不是Polygons,它就可以正常工作。
那是什麼心?它只是一個數組[0]和[1]?但真正的問題可能是:「位置:...」需要Google地圖點。試試這個:position:new google.maps.LatLng(centroid [0],centroid [1]) – 2015-01-21 10:38:13
爲什麼你不通過一個標記而不是第二個參數與info_window.open(map,this) - > info_window.open (map,new new google.maps.Marker({...})在centroid和LatLng-Object的幫助下設置標記的位置,在這個例子中也使用了infowindow的開放方法:https:// developers .google.com /地圖/文檔/ JavaScript的/示例/信息窗口-簡單?HL =德 – Blauharley 2015-01-21 11:12:26