JQuery UI диалог + Google Maps + IE8 ошибка ... Что бы это могло быть? - PullRequest
0 голосов
/ 21 августа 2009

Я пытаюсь использовать диалоговое окно jquery ui и карты Google ... поэтому, когда пользователь нажимает на ссылку, открывается диалоговое окно с картой.

Я пробовал разными способами ... он работает на FF и Chrome, но на IE8 карта серая.

В одном из изменений порядка ссылок на скрипты в заголовке html, карта загружает только часть его в IE8 ... пытался загрузить карты Google до и после диалога, но ничего не изменилось

Это очень сбивает с толку ... Кто-нибудь прошел эту проблему ??

Спасибо!

1 Ответ

2 голосов
/ 21 августа 2009

В документации по JQuery UI для вкладок это сказано, и я думаю, что это применимо и к диалогам (вам нужно настроить код для диалогов).

Любой компонент, который требует некоторых размерный расчет для его инициализация не будет работать в скрытом вкладка, потому что сама панель вкладок скрыто через дисплей: нет, так что любой элементы внутри не будут сообщать о своих фактическая ширина и высота (0 в большинстве браузеры).

Есть простой обходной путь. Использовать Левый метод для скрытия неактивных панели вкладок. Например. в вашей таблице стилей заменить правило для класса селектор ".ui-tabs .ui-tabs-hide" с

.ui-tabs .ui-tabs-hide {
  position: absolute;
  left: -10000px; 
}

Для карт Google вы также можете изменить размер карта, как только вкладка отображается как это:

$('#example').bind('tabsshow',
  function(event, ui) {
  if (ui.panel.id == "map-tab") {
    resizeMap();
  }
});

resizeMap () будет вызывать Google Maps ' checkResize () на конкретной карте.

...