Buenas serdj.
La siguiente función recibe como parámetro las coordenadas del marker y crea uno nuevo con nombre y eventos distintos según sea el valor capturado en la variable "nombre".
Por ejemplo, si captura Copenhague, creará el Gmarker de nombre "Marker_Conpenhague", con su Infowinow "infowindow_Copenhague" y un evento "click" relacionado directamente con este marker que activa solo el infowindow correspondiente.
Code:: |
Function crea_marker_array(posicion){
var nombre = document.getElementById("nombre_destino").value;
var titulo = nom_viaje;
var descripción = document.getElementById("descripcion").value;
var contentString='<div id="content">'+
'<div id="siteNotice"></div>'+
'<h3 id="firstHeading" class="firstHeading"><CENTER>'+nombre+' / '+titulo+'</CENTER></h3>'+
'<div id="bodyContent">'+
'<HR>'+
'<p><CENTER>'+descripcion+'</CENTER></p>'+
'<CENTER><A HREF="http://www.unapaginaweb.com"target="_blank"><IMG SRC="http://www.rutadondealojamoslaimagen.jpg"></CENTER>'+
'</A>'+
'</div>';
eval("var infowindow_"+nombre+" = new google.maps.InfoWindow({content: contentString});");
eval("var Marker_"+nombre+" = new google.maps.Marker({position: posición, map: map, title: '"+nombre+"'});");
eval("google.maps.event.addListener(Marker_"+nombre+", 'click', function() {infowindow_"+nombre+".open(map,this);});");
eval("google.maps.event.addListener(map, 'click', function() {infowindow_"+nombre+".close();});");
}
|
¿Te queda claro el concepto?.
Un saludo.