Zoom a la ubicación del marcador al hacer clic - Folleto

Aug 20 2020

Estoy mostrando marcadores en el mapa del archivo geojson. En el código actual, cuando paso el cursor sobre el marcador, puedo ver las propiedades en la ventana emergente. Quiero agregar volar o hacer zoom en la ubicación exacta del marcador al hacer clic en el marcador. ¿Cómo puedo lograrlo?

 cityMarker = new L.geoJson(city, {
        onEachFeature: function(feature, layer) {
            //if (feature.properties && feature.properties.name) {
            if ( feature.properties.name) {   
                layer.bindPopup(feature.properties.name, {closeButton: false, offset: L.point(0, -2)});
                layer.on('mouseover', function() { layer.openPopup(); });
                layer.on('mouseout', function() { layer.closePopup(); });
            }
        },
        pointToLayer: function (feature, latlng) {
            var cityIcon = new L.Icon({
            iconSize: [20, 20],
            iconAnchor: [13, 27],
            popupAnchor: [1, -20],
            iconUrl: './css/img/marker-icon-red.png'
        });
            //return L.circleMarker(latlng);
            return L.marker(latlng,{icon: cityIcon});
        }
    });
  
    map.addLayer(cityMarker);

Respuestas

1 poonampatel Aug 20 2020 at 13:31

He descubierto la solución, así que la estoy agregando aquí.

 cityMarker.on('click', function(e) {
      map.setView(e.latlng, 16);      
});         
1 peeebeee Aug 20 2020 at 14:20

Para obtener un buen efecto de panorámica/zoom animado suave en lugar de un salto, utiliceflyTo

cityMarker.on('click', function(e) {
      map.flyTo(e.latlng, 16);      
});