1
function showPointMarker (point, index, address, changeCenter, changeZoomLevel) {
if (changeCenter)
{
if (changeZoomLevel) {
// marker.setMap(map);
map = new google.maps.Map(
document.getElementById('map'), {
center: point,
zoom: 7,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
} else {
map = new google.maps.Map(
document.getElementById('map'), {
center: point,
zoom: 10,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
var letter = String.fromCharCode("A".charCodeAt(0) + index);
//var letteredIcon = new GIcon(baseIcon);
//letteredIcon.image = "";
var pinImage = new google.maps.MarkerImage("http://www.google.com/mapfiles/marker" + letter + ".png" ,
new google.maps.Size(21, 34),
new google.maps.Point(0,0),
new google.maps.Point(10, 34));
var siteLatLng = new google.maps.LatLng(point.hb,point.ib);
var marker = new google.maps.Marker({
position: siteLatLng,
map: map,
icon:pinImage,
html: address
});
marker.setMap(map);
google.maps.event.addListener(marker, "click", function() {
// alert(this.html);
infowindow.setContent(this.html);
infowindow.open(map, this);
});
} //else ends here
} // if change center ends here
} //function ends here
我試圖添加標記到地圖,我不能保存我以前的標記,我只看到最後,請幫助我在這裏..欣賞你的幫助。 我在這裏錯過了一些東西,任何一點都可以指出我的錯誤。不能保留標記在谷歌地圖v3
感謝您的回覆,我試過了,現在我得到了地圖上的第一個和最後一個標記.. – 2013-03-04 03:10:42
'if(changeCenter)'看起來好奇。它包裝了整個函數,所以如果這是錯誤的,該函數不會執行任何操作。如果這是爲什麼要調用該函數?我可能會嘗試將其解決(在調用此函數的塊中執行此測試)。第一個'if(changeZoomLevel)'和'} else {'看起來有點不對稱。我將這個函數中的所有映射初始化和特殊情況分開,並刪除與changeCenter和changeZoomLevel相關的所有內容。此外,我會檢查JavaScript錯誤,以防止它們停止。 – 2013-03-04 05:14:32
感謝User1389596,我拿出所有兩個條件,現在工作正常..我認爲最新的地圖會自動檢查縮放級別變化或centerchange,糾正我,如果我錯了。 – 2013-03-06 02:43:11