У меня есть загрузка карты V3 и по умолчанию сосредоточена на определенной долготе/широте. После загрузки пользователь может ввести свой адрес, чтобы получить указания к этой точке. Когда это произойдет, карта будет изменена, чтобы разместить поле направлений слева от него. Из-за этого маршрут находится вне центра в окне карты. Я попробовал следующий код, который, как я думал, должен логически работать, но безрезультатно.
Новая реализация: Если я каким-либо образом изменю размер окна, он начнет работать, как ожидалось.
Обнаружена проблема: Мне нужно было запустить google.maps.event.trigger(map, 'resize')
после изменения размера контейнера карты.
directionsService.route(query, function(result,status) {
if (status === google.maps.DirectionsStatus.OK) {
// This sets the directions container to display:block and resizes the map
document.getElementById('map-container').className = "directions";
directions.setDirections(result);
var bounds = result.routes[0].bounds;
map.fitBounds(bounds);
map.setCenter(bounds.getCenter());
} else {
alert("");
}
});