Voici ma solution, qui fonctionne également lorsque deux marqueurs sont très proches. Le niveau de zoom maximal effectif est le même dans les deux situations. On ne finit donc pas par zoomer inutilement vers l'arrière, lorsqu'il y a plus d'un marqueur
L'effet, encore une fois, est d'assurer un zoom maximum, sans utiliser l'option maxZoom, ce qui a pour effet probablement indésirable de rendre impossible pour l'utilisateur de zoomer plus loin que le niveau maxZoom avec la commande de zoom
J'ai calculé au préalable maxLat, minLat, maxLng et minLng ...
var minLatSpan = 0.002;
if (maxLat - minLat < minLatSpan) {
// ensures that we do not zoom in too much
var delta = (minLatSpan - (maxLat - minLat)) / 2;
maxLat += delta;
minLat -= delta;
}
map.fitBounds({
east: maxLng,
west: minLng,
north: maxLat,
south: minLat,
});