-1

Я устанавливаю маркер для размещения центра экрана, когда он нажимает событие, запускается пользователем с карты Google. но проблема в том, что содержимое информационного окна не полностью видимо в порт представления, как вы можете видеть на рисунке ниже. Как я могу автоматически панорамировать карту по коду, чтобы информационное окно полностью отображалось в порт представления. я отключил прокрутку в пределах содержимого информационного окна.Авто-панорамирование карты, так что infowindow полностью виден

Я Half content is not showing within view port

+1

Это поведение по умолчанию, вам не нужно ничего делать. Пожалуйста, покажите код или предоставите демо-версию вопроса –

ответ

0

Я нашел решение в StackOverflow. Кстати, спасибо команде Stackoverflow.

google.maps.Map.prototype.panToWithOffset = function(latlng, offsetX, offsetY) { 
    var map = this; 
    var ov = new google.maps.OverlayView(); 
    ov.onAdd = function() { 
     var proj = this.getProjection(); 
     var aPoint = proj.fromLatLngToContainerPixel(latlng); 
     aPoint.x = aPoint.x+offsetX; 
     aPoint.y = aPoint.y+offsetY; 
     map.panTo(proj.fromContainerPixelToLatLng(aPoint)); 
    }; 
    ov.draw = function() {}; 
    ov.setMap(this); 
}; 

и называется эта функция при нажатии маркера.

+1

Означает ли это, что это дубликат? С каким вопросом стоит StackOverflow? Вы должны ссылаться на источник. – geocodezip