#google-maps
#google-карты
Вопрос:
когда я ищу близлежащие местоположения на сайте, над которыми я работаю, результаты отображаются в списке, но область карты просто выделена серым цветом, иногда она возвращается, но затем исчезает.
буду признателен за любую помощь
Ответ №1:
Это ответ на ваш вопрос в первом ответе. Его идея верна в том, что вам нужно инициализировать его местоположением, прежде чем что-либо станет видимым. Также, пожалуйста, обратите внимание, что это вопрос о версии V3, первый ответ касается синтаксиса версии V2. Пожалуйста, попробуйте приведенный ниже код, используя ту же идею, что и в сообщении v2.
Установите значение центра в параметрах карты с вашим исходным местоположением. Вы также можете настроить масштаб здесь.
var mapOptions = {
zoom: 12,
mapTypeId: google.maps.MapTypeId.ROADMAP,
center: new google.maps.LatLng(latitude, longitude)
};
var map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);
Ответ №2:
Время инициализации важно. Видна ли карта в момент загрузки страницы или она появляется / исчезает в / (что бы это ни меняло состояние с невидимого на видимое)?
Если карта скрыта в момент инициализации, карта будет серой.
Ответ №3:
В версии v3 проверьте, что ваши широта и Lng в порядке и не являются «неопределенными».
console.log(results[0].geometry.location.k);
console.log(results[0].geometry.location.D);
var mapOptions = {
zoom: 15,
center: new google.maps.LatLng(
results[0].geometry.location.k,
results[0].geometry.location.D
)
};
map = new google.maps.Map(document.getElementById('map-canvas'),mapOptions);
Ответ №4:
Исходя из моего опыта работы с Google Maps, иногда серые пятна появляются, когда в местоположении, которое вы в данный момент просматриваете, отсутствуют доступные данные карты (особенно при высоком коэффициенте масштабирования) или когда ваше интернет-соединение медленное, так что загрузка данных карты занимает много времени / сбой!
Но причиной могут быть и другие факторы — возможно.
Когда вы инициализируете свою карту, скажем, например:
var map = new GMap2(document.getElementById("map_canvas"));
map.setCenter(new GLatLng(37.4419, -122.1419), 13);
параметр секунд для map.setCenter
— это коэффициент масштабирования — в данном случае 13
.
вы также можете установить новый уровень масштабирования для карты следующим образом:
map.setZoom(5);
Комментарии:
1. где установлен коэффициент масштабирования rteh?