Иногда карта google частично поставляется с другой областью, выделенной серым цветом. Есть один улов, если мы запустим Firebug, изображения попадают в ту серой области. Не знаю, почему это происходит. Кто-нибудь когда-либо испытал это и нашел решение, пожалуйста, поделитесь.Карта Google поставляется частично, вместо изображений с сервера google появляется серая область.
ответ
Эта ошибка может возникнуть, если вы изменения размеров изображения карты DIV
. После изменения размера попробуйте вызвать функцию gmap.checkResize()
.
В V3 checkResize обесценивается. Решения для V3 можно найти по адресу http://blog.codebusters.pl/en/entry/google-maps-in-hidden-div – wooncherk
yay плагин для сайта –
Из комментария: 'google.maps.event.trigger ('
Если вы используете v3 попробовать
google.maps.event.trigger(map, "resize");
Также посмотрите на here
Большое спасибо за это - мне это помогло! – Eamorr
... и снова. Googled 'google maps api gray space' и получил эту страницу. Потрясающие. В моем случае мой объект карты был создан внутри другого объекта, а не глобально, поэтому убедитесь, что «map» относится к правильному объекту! –
Спасибо, что все еще работает как шарм в 2013 году! –
Привет, если вы используете переключатель в DIV с контейнером карты вы звоните resizeMap в функции
associated with the trigger:
$(".trigger").click(function(){
$(".panel").toggle("fast");
$(this).toggleClass("active");
resizeMap();
return false;
затем resizeMap(); как этот
function resizeMap()
{
google.maps.event.trigger(map,'resize');
map.setZoom(map.getZoom());
}
не забудьте установить переменную карту как глобальные;) приветствий
хорошая работа - это работа, спасибо –
Я нашел простое решение для частично загруженной карты Google. Обычно это вызвано вызовом onLoad()
, когда остальная часть страницы (включая ваш элемент карты) не полностью загружена. Это вызывает частичную загрузку карты. Простым способом решения этой проблемы является изменение действия тега body onLoad
.
старый путь:
onload="initialize()"
Новый способ:
onLoad="setTimeout('initialize()', 2000);"
Это ждет 2 секунды до того, как Google Javascript доступы атрибуты правильного размера. Также попробуйте очистить кеш браузера перед его попыткой; иногда застревает там :)
Это мой лучший Javascript часть в случае, если Вам интересно (именно так, как описано в Google документации, но потому, что я называю Latitude
и Longitude
от PHP переменных, отсюда PHP фрагменты.
<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?sensor=false"></script>
<script type="text/javascript">
function initialize() {
var myOptions = {
center: new google.maps.LatLng(<?php echo $my_latitude; ?> , <?php echo $my_longitude; ?>),
zoom: 14,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map_canvas"),
myOptions);
var point = new google.maps.LatLng(<?php echo $my_latitude; ?> , <?php echo $my_longitude; ?>);
var marker = new google.maps.Marker({ position:point, map:map })
}
</script>
Ты генис! Это должен быть главный ответ. – Lan
Я просто хочу добавить к этому обсуждению, что у меня тоже была проблема с серыми полосками, и это не было той же проблемой, что мне нужно было использовать функцию gmap.Resize, но она была в моем css. имеет
img {
max-width:50%
}
, поэтому, когда я установил это в своем файле css
#map-canvas {
max-width:none;
}
Проблема исчезла! Я просмотрел Google, но не смог найти ответ.
этот стиль решить мою проблему
#map_canvas img { max-width: none !important; }
Это заставляет браузер, чтобы позволить карту, чтобы быть столь же широко, как это должно быть - !important
по существу означает «не перезаписывать этот стиль».
Я решил это так, моя проблема была в устройстве вращения, это решение отлично работает:
$scope.orientation = function(){
var supportsOrientationChange = "onorientationchange" in window,
orientationEvent = supportsOrientationChange ? "orientationchange" : "resize";
window.addEventListener(orientationEvent, function() {
$interval(function(){
google.maps.event.trigger(map, 'resize');
},100);
});
};
$scope.orientation();
я этот вопрос всплывал во время работы на других частях моего сайта, так что я не заметил это правильно, когда оно началось. После прохождения каждого изменения я сделал за последний час, я наткнулся на виновник:
div
{
[... other css ...]
overflow: auto;
}
в моем CSS. Я удалил это и вуаля, он работает. (Конечно, я мог бы просто изменить атрибут переполнения на моем div div, но мне нужно только переполнение: auto на пару div.) Я уверен, что есть веская причина, почему, но я довольно новичок в этом, поэтому я не могу знать. В любом случае я надеюсь, что это может помочь кому-то.
- 1. встроенная карта google просто серая
- 2. Серая область в Google Maps (Joomla 3+)
- 3. JQuery: Google карта загружает частично
- 4. Серая карта всего за исключением части в картах Google iOS
- 5. API Карт Google - серая карта с элементами управления
- 6. API Карт Google, отображающий серая карта на загрузке страницы ajax
- 7. Отображена частично серая
- 8. Новая встроенная карта Google, серая при небольших размерах
- 9. Карта Google не появляется внутри div
- 10. Android проект: карта Google не появляется
- 11. Карта Google появляется только после обновления
- 12. листовка openstreetmaps частично отображается в google chrome
- 13. Проблема с лифтом/картографией (серая область)
- 14. Карты Google, отображающие частично
- 15. Удалить индексирование google с нашего сервера изображений
- 16. Карта Google показывает серый квадрат вместо карты
- 17. Нежелательная серая область на карте
- 18. Почему карта google api отображает карту частично в 2 раза?
- 19. OSMDroid серая область от sqlite плитки
- 20. Почему листовка выводит серая карта?
- 21. Серая область ниже сгруппирована UITableView
- 22. Серая сетка, отображаемая на картах Google
- 23. Google карта - добавить дорожные направления, круг, почтовый индекс область
- 24. PhantomCSS/CasperJS - Серая реклама изображений
- 25. Пользовательская карта Google
- 26. Google Map не отображается, но работает с маркерами/кластерами (серая область карты)
- 27. Серая область на стыке 9
- 28. Google Map показывает только частично
- 29. API Карт Google - карта не отображается
- 30. JavaScript: Google гео - карта
Итак, что именно вы делаете, чтобы вызвать такое поведение? – slugster
Это не соответствует, бывает только некоторое время. используя v2 карт google api. это помогает ... – Vishwanath
Как предложено в [этом комментарии] (http://stackoverflow.com/a/9246072/877353), размещение размера в пикселе в контейнере карты должно решить эту проблему. Это сделало для меня –