kmllayer google example data cargar google-maps-api-3 kml infowindow

google maps api 3 - example - Problema con las ventanas de información que permanecen activas cuando se selecciona otra capa de KML-Google Maps API V3



kml maps google (1)

Tengo varias capas de kml que se cargan en mi Google Map API V3 usando las casillas de verificación. Cuando se seleccionan dos o más capas, las ventanas de información de una capa no colapsan automáticamente cuando se hace clic en las demás capas. Me gustaría que las ventanas de información se cierren automáticamente aunque estén en capas KML diferentes. Cualquier sugerencia en la dirección correcta será útil.

Gracias

Darren Wilson


Necesita desactivar la creación de la ventana de información predeterminada y manejar la ventana de información usted mismo en el código. Aquí hay un ejemplo:

var CommonInfoWindow = new google.maps.InfoWindow({"maxWidth": 500}); /** @param {...*} KmlMouseEvent */ function KmlLayerClicked(KmlMouseEvent) { var ClickData = /** @type {google.maps.KmlMouseEvent} */(KmlMouseEvent); CommonInfoWindow.close(); if (ClickData.featureData && ClickData.featureData.id) { CommonInfoWindow.setOptions({ "position": ClickData.latLng, "pixelOffset": ClickData.pixelOffset, "content": ClickData.featureData.infoWindowHtml }); CommonInfoWindow.open(map); } } /** @type {google.maps.KmlLayer} */ var KmlOverlay = new google.maps.KmlLayer(KmlUrl, { ''preserveViewport'': true, ''suppressInfoWindows'': true }); google.maps.event.addListener(KmlOverlay, "click", KmlLayerClicked);