GMap в iframe выходит из центра - PullRequest
1 голос
/ 18 июня 2010

У меня есть карта Google (API 2), которая нормально работала как отдельная страница.

Однако, когда я загружаю страницу карты в iframe (с Thickbox ),карта смещается от центра:
обычно она центрирована над Германией, а в фрейме вместо нее центрируется Иран.

Как правильно расположить карту по центру?


Мои предположения:

Проблема может быть вызвана временем загрузки iframe.Я предполагаю, что скрипт вычисляет размер окна на основе размера iframe, когда он все еще загружается.Это странно, так как я загружаю карту, когда документ готов.

$(document).ready(function() {
  setupSearchForm();
  setupMap();
  setupResults();
});

Например, когда я обновляю уже загруженный iframe, центр возвращается в Германию.Пример кода загрузки карты

1 Ответ

1 голос
/ 18 июня 2010

Мое предположение оказалось хорошим. Причиной был размер iframe, рассчитанный во время его загрузки.

Исправить несложно: просто укажите size в GMapOptions - тогда карта всегда будет знать, насколько большой ее контейнер.

В моем случае это означало изменение

map = new GMap2(document.getElementById("map_canvas"));

до

map = new GMap2(document.getElementById("map_canvas"), { 
  size:new GSize(970,500),
});
...