1
我一直遇到infoWindows和Google Maps API v3的問題。 最初,我遇到了其他人在打開新窗口時關閉infoWindows的問題。 我想通過事先定義「infowindow」來解決問題。現在,當我點擊一個新標記時它們關閉,但內容相同。 我應該如何重新構造我的代碼,以確保內容每次都是正確的 - 並且在給定時間只有一個infoWindow打開?Google Maps API v3 - infoWindows全部具有相同內容
謝謝!
保羅
var allLatLngs = new Array();
var last = 0;
var infowindow;
function displayResults(start, count){
if(start === undefined){
start = last;
}
if(count === undefined){
count = 20;
}
jQuery.each(jsresults, function(index, value) {
if(index >= start && index < start+count){
var obj = jQuery.parseJSON(value);
$("#textresults").append(index + ": <strong>" + obj.name + "</strong> " + Math.round(obj.distanz*100)/100 + " km entfernt" + "<br/>");
var myLatlng = new google.maps.LatLng(obj.geo_lat, obj.geo_lon);
allLatLngs.push(myLatlng);
var contentString = '<strong>'+obj.name+'</strong>';
infowindow = new google.maps.InfoWindow({
content: contentString
});
var marker = new google.maps.Marker({
position: myLatlng,
//title:"Hello World!"
});
marker.setMap(map);
google.maps.event.addListener(marker, 'click', function() {
if (infowindow) { infowindow.close(map,marker); }
infowindow.open(map,marker);
});
}
});
last = start+count;
嗨johncatfish, 謝謝你的回答。但是,恐怕我不太明白如何使用它。我用你的代碼替換了infowindow.open(map,marker),但它只拋出錯誤。 你能解釋一下嗎? 謝謝, 保羅 – 2010-05-24 05:24:43