我似乎遇到了一個問題,我看到很多信息框的實現,但似乎無法弄清楚如何將另一段代碼插入標記。我對JavaScript很沒有經驗,所以我似乎無法弄清楚。谷歌地圖apiv3,每個標記具有相同的點擊功能
當我去映射它顯示了所有的標誌物,但只有選擇一段代碼是最後的陣列中,
代碼:
function updateMap() {
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 4,
center: locationarray[0]
});
var markernumber = new Array();
for (var i = 0; i < 99; i++) {
markernumber[i] = new google.maps.Marker({
position: locationarray[i],
map: map
});
console.log('in loop:' + i);
google.maps.event.addListener(markernumber[i], 'click', function() {
console.log('in click:' + i);
openInNewTab(contentString[i]);
});
}
document.getElementById('loader').style = "opacity: 0;";
}
contentstring [i]的工作正常,所以它沒有這個功能。
'谷歌地圖apiv3給每個標記相同的點擊function' - 不,你正在做的...'i'內的事件處理程序將是100,每標記點擊。想關閉 –
[Google Maps JS API v3 - 簡單多標記示例]的可能重複(https://stackoverflow.com/questions/3059044/google-maps-js-api-v3-simple-multiple-marker-example) – geocodezip