У меня есть следующая функция, чтобы показать пользователю направление между 2 латами и lngs
$(document).ready(function(){
initialize_direction();
});
function initialize_direction() {
var directionDisplay;
var directionsService = new google.maps.DirectionsService();
var direction_map;
directionDisplay = new google.maps.DirectionsRenderer();
var myOptions = {
mapTypeId: google.maps.MapTypeId.ROADMAP,
}
direction_map = new google.maps.Map(document.getElementById("direction_canvas"), myOptions);
directionDisplay.setMap(direction_map);
var start = '51.5074, 0.1278';
var end = '<%= lat %>' + ',' + '<%= lng %>';
var request = {
origin:start,
destination:end,
travelMode: google.maps.DirectionsTravelMode.DRIVING
};
directionsService.route(request, function(response, status) {
if (status == google.maps.DirectionsStatus.OK) {
directionDisplay.setDirections(response);
}
});
}
Проблема в том, что, если я помещаю холст, содержащий карту, на страницу, карта автоматически масштабируется, чтобы соответствовать 2 маркерам, но если я помещаю холст в модал Bootstrap, я получаю следующее, которое не масштабируется автоматически, чтобы соответствовать маркеры:
Кто-нибудь знает, как это исправить? Внизу - Бутстрап Модал
<div class="modal fade" id="direction_modal" role="dialog">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">Direction to restaurant</h4>
</div>
<div class="modal-body">
<div id="direction_canvas" style="width:100%;height:400px;"></div>
</div>
</div>
</div>