Вызов Fancybox из прослушивателя событий в Google Maps вместо стандартного информационного окна - PullRequest
1 голос
/ 26 января 2011

Я хочу заменить информационное окно API Карт Google по умолчанию наложением Fancybox.

версия

Google Maps API 3.0

Цель

Заменить стандартное информационное окно на всплывающее окно Fancybox

Вариант использования

  1. Карта Google загружается в полноэкранном режиме (100% на 100%)
  2. Маркеры размещены на карте
  3. Пользователь нажимает на маркер и отображается всплывающее окно Fancybox, которое накладывается на карту
  4. Пользователь нажимает «X» в верхнем правом углу Fancybox, чтобы закрыть его

Я не знаю, как лучше всего с этим справиться. Легче ли вызывать Fancybox, используя обработчик событий addListener, передавая маркер в качестве параметра? Если да, то как бы вы порекомендовали это сделать?

Например:

google.maps.event.addListener(marker, 'click', function(){
    // Call Fancybox, but how?
});

Заранее спасибо,

Грэм Кеннеди

1 Ответ

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

Я обнаружил, что лучший способ сделать это - передать контент вручную методом Fancybox href. Работает как шарм для меня.

function addMarker(data) {

    // build the window contents
    var contentForBox = data;

    google.maps.event.addListener(marker, 'click', function() {

        $.fancybox({
            href: contentForBox
            // other options
        });


    });
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...