Sin poder hacer las pruebas del código completo permíteme darte algunas sugerencias. Si no te funciona, envíame un enlace a tu página si está levantada para pruebas.
Desde la posición donde veo tu función
Código Javascript
:
Ver original...
var onMarkerClick = function() {
var marker = this;
var latLng = marker.getPosition(); //Entrega la posición de los marcadores
infoWindow.setContent(marcadores); //Esta es la línea que tiene el contenido de la variable marcadores
infoWindow.open(map, marker);
}; // Cierre de var onMarkerClick = function() { ...
No tengo claro que le llegue la información del
Código Javascript
:
Ver originalif($tabla == "puntos" or $criterio != ""){ .... }
Personalmente, seguido de
Código Javascript
:
Ver original...
var marcadores ='<b>Empresa:</b>' +empresa + '<br>' + '<b>Dirección:</b>' +direccion + '<br>' + '<b>Teléfono:</b>'+telefono;
...
introduciría la lectura del infowindows. Quedaría algo parecido a esto
Código Javascript
:
Ver originalvar marcadores ='<b>Empresa:</b>' +empresa + '<br>' + '<b>Dirección:</b>' +direccion + '<br>' + '<b>Teléfono:</b>'+telefono;
google.maps.event.addListener(marker, 'click', function () {
infowindow = new google.maps.InfoWindow();
infowindow.setContent(marcadores);
infowindow.open(map, marker);
});
// google.maps.event.addListener(marker, 'click', onMarkerClick); Podríamos eliminar la línea y la función onMarkerClick
Como ves,
infowindow queda dentro de la función
google.maps.event.addListener(marker, 'click', function () y sobra onMarkerClick = function() al completo