0
我正在谷歌地圖v3上工作。 在這張地圖上,我想顯示幾個標記,每個標記都帶有Infowindow,其中顯示了關於該點的一些信息。 信息的來源是一個JavaScript數組,每個點都有一些數據,在這裏一切正常。 該數組包含(有時)地址(有時爲空)並始終是經緯度座標,所以當地址不存在時,我必須進行反向地理編碼。在這裏我的代碼:谷歌地圖v3,反向地理編碼和多個Infowindow
var geocoder = new google.maps.Geocoder();
for(var i=0;i<markersArray.length;i++){
var la=markersArray[i][0]);
var lo=markersArray[i][1]);
gpoint=new google.maps.LatLng(la,lo);
var aMarker = new MarkerWithLabel({ //part of Google Maps Utility Lib
position: gpoint,
map: map,
labelContent: deviceID,
labelAnchor: new google.maps.Point(22, 0),
labelClass: "labelStyle",
html: "<ul><li>Speed: "+markersArray[i][3]+"</li></ul>",
address: markersArray[i][4]
});
if (aMarker.address<="" || aMarker.address==null) {
geocoder.geocode({'latLng': gpoint}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
if (results[1]) {
aMarker.address=results[1].formatted_address;
}
}
});
}
google.maps.event.addListener(aMarker, 'click', function() {
infowindow.setContent(this.html+" "+this.address);
infowindow.open(map, this);
});
....
}
幾乎一切正常:標記在適當的位置,所有這些顯示出與除了那些地址是空的,是反向地理編碼正確的地址正確的信息窗口。 對於最後一組,只有最後一個標記infowindow顯示正確的地址,所有其他infowindow地址都是空的。 有什麼想法? 非常感謝!
你能給我一些代碼行嗎?非常thx! – user1569385 2012-08-02 20:23:52
你沒有提供足夠的代碼來讓我輕鬆做到這一點。如果你想讓我推薦代碼,請將鏈接發佈到可以工作的地圖上,並演示問題(或者是一個jsfiddle)。 – geocodezip 2012-08-02 20:34:06