Откройте Google Map в Facebox - PullRequest
3 голосов
/ 27 мая 2011

Я открываю формулу редактирования в jQuery Facebox. И под этой формулой есть карта Google, которая указывает геокодером положение данного адреса с помощью маркера. К сожалению, карта не отображается в лицевой панели. На моей обычной странице все работает отлично. Странно то, что я могу видеть часть карты на короткое время, затем она становится серой (как фон).

Я нашел несколько постов, в которых говорится, что я должен прикрепить карту после события afterReveal для facebox, например

$(document).bind("afterReveal.facebox", function(){

  var center = new google.maps.LatLng(Globals.DEFAULTLAT, Globals.DEFAULTLNG)
  var options = {
    panControl: false,
    zoomControl: true,
    zoomControlOptions: {
      style: google.maps.ZoomControlStyle.SMALL,
      position: google.maps.ControlPosition.TOP_CENTER
    },
    scaleControl: false,
    streetViewControl: false,
    mapTypeControl: false,
    zoom: 12,
    center: center,
    mapTypeId: google.maps.MapTypeId.ROADMAP
  };

  var venue_map = new google.maps.Map($("#venue_map")[0], options);

  // google.maps.event.trigger(venue_map, 'resize');
});

В другом сообщении говорилось, что нужно инициировать событие изменения размера на месте (google.maps.event.trigger(venue_map, 'resize'), но это тоже не работает.

#venue_map имеет фиксированную ширину и высоту 400 пикселей. Я также играл с z-индексом div, не повезло.

Надеюсь, кто-нибудь может мне помочь, спасибо, смокинг

[Edit:]

Вот скриншот сломанной карты. Он загружает логотип Google Maps, текст Условия использования и небольшую полосу слева. Серый фон - это мой фейсбокс. Broken Google Maps in Facebox

[Edit2:]

Это будет странно. Иногда карта отображается так: Borken Google Maps in Facebox

1 Ответ

1 голос
/ 27 мая 2011

Возможно ли, что существуют некоторые определения CSS для содержимого в теле facebox?

...