我需要帮助...... 当我点击每个标记时,我想为每个标记显示一个信息窗口。 请原谅我的英语不好。 感谢。
markers=new Array();
for(i=0;i<res['infos'].length;i++){
var a=new Object();
a.lat=res.infos[i]['lat'];
a.lng=res.infos[i]['lng'];
var Titre="Véhicule: "+res.infos[i]['NomVehicule']+" Position du: "+res.infos[i]['Date']+" à "+res.infos[i]['Heure'];
var NomIcone="IconeVehicule/"+res.infos[i]['Icone'];
var point=new google.maps.LatLng(a.lat,a.lng);
var marker = new google.maps.Marker({position: point,map: map, title: Titre, icon: NomIcone});
markers.push(marker);
google.maps.event.addListener(marker, 'mouseover', (function(marker, i) {
return function() {
infowindow.setContent(res.infos[i]['NomVehicule']);
infowindow.open(map, marker);
}
})(marker, i));
}
</script>
答案 0 :(得分:0)
这是要尝试的代码。我认为你的问题出在事件处理程序中。
var infoWindow = new google.maps.InfoWindow({
content: "loading..."
});
var markers=new Array();
for(i=0;i<res['infos'].length;i++){
var a=new Object();
a.lat=res.infos[i]['lat'];
a.lng=res.infos[i]['lng'];
var Titre="Véhicule: "+res.infos[i]['NomVehicule']+" Position du: "+res.infos[i]['Date']+" à "+res.infos[i]['Heure'];
var NomIcone="IconeVehicule/"+res.infos[i]['Icone'];
var point=new google.maps.LatLng(a.lat,a.lng);
var marker = new google.maps.Marker({
position: point,
map: map,
title: Titre,
icon: NomIcone,
infoWindowContent: res.infos[i]['NomVehicule']
});
markers.push(marker);
google.maps.event.addListener(marker, 'mouseover', function(){
infowindow.setContent(marker.infoWindowContent);
infowindow.open(map, marker);
});
}