我遇到一些麻煩,在信息窗口進行動態標記,我就與從parse一些geopoints實現一些數據。每個標記谷歌信息窗口映射
function initMap(arlat, arlon, arname, artel, ardesc, aradd, arithmisi) {
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 6,
center: {
lat: 37.58,
lng: 23.43
}
});
var iconBase = 'http://sourtouki.gr/';
for (j = 0; j < arithmisi; j++) {
var contentString = '<div id="content">' +
'<div id="siteNotice">' +
'</div>' +
arname[j] +
'<div id="bodyContent">' +
ardesc[j] + "<br>" + aradd[j] + "<br>" + artel[j] + "<br>" +
'</div>' +
'</div>';
var marker = new google.maps.Marker({
position: {
lat: arlat[j],
lng: arlon[j]
},
map: map,
icon: iconBase + 'sourtoukilogo.png',
title: arname[j]
});
}
var infowindow = new google.maps.InfoWindow({
content: contentString
});
marker.addListener('click', function() {
infowindow.open(map, marker);
});
}
因此,通過上面的代碼,我將一些表中的數據推送到地圖中。標記是在位置上創建的,但是每當我點擊一個標記時,它只打開一個標記。 它加載了17個標記,但唯一打開的infowindow是第一個條目,無論我推送什麼標記。 另外每個標記的標題是正確的。
UPDATE 我有這個地圖上的17項,17 geopoints(緯度,經度),17名,17description等與代碼 所以上面我得到的所有的geoipoints,我把標誌物上的正確位置進入地圖。我希望當我點擊一個標記採取名稱和地址,並出現在infowindow。但我想我在for循環裏有什麼地方錯了。儘管我將所有數據都視爲必需,但每個地點都有正確的名稱等,但每當我點擊一個標記時,只有第一個條目打開infowindow,可以說我點擊地圖中的第三個標記第一個infowindow將打開,如果我按第12個標記也會發生。 任何想法爲什麼會發生這種情況?
更新2
function initMap(arlat, arlon, arname, artel, ardesc, aradd, arithmisi) {
// console.log(arlat.length + arlon.lenght);
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 6,
center: {
lat: 37.58,
lng: 23.43
}
});
var iconBase = 'http://sourtouki.gr/';
infowindow = new google.maps.InfoWindow();
for (j = 0; j < arithmisi; j++) {
var marker = new google.maps.Marker({
position: {
lat: arlat[j],
lng: arlon[j]
},
map: map,
icon: iconBase + 'sourtoukilogo.png',
title: arname[j]
});
var contentString = '<div id="content">' +
'<div id="siteNotice">' +
'</div>' +
arname[j] +
'<div id="bodyContent">' +
ardesc[j] + "<br>" + aradd[j] + "<br>" + artel[j] + "<br>" +
'</div>' +
'</div>';
google.maps.event.addListener(marker, 'click', function() {
infowindow.setContent(contentString);
infowindow.open(map,this);
});
}
}
二號更新我做一個空的信息窗口外的for循環後,我裏面打電話的內容,現在它打開所有的信息窗口,但它裏面的內容相同。
Generaly我在計算器嘗試了很多答案在其他問題在這裏,沒有固定工作了我的情況下,如果有人可以幫助我將不勝感激!
抱歉,沒有充分理解你的問題。 「它加載17個標記」是什麼意思?第一個條目中是否有17個標記中的所有數據加載到一個標記中? –
@HermanNz我將編輯我的問題來解釋的更好 –
可能的複製[谷歌地圖JS API V3 - 簡單多個標記示例](http://stackoverflow.com/questions/3059044/google-maps-js-api-v3-簡單的多標記物例如) – geocodezip