переопределение большого всплывающего окна на маршрутах Google Maps - PullRequest
2 голосов
/ 21 апреля 2010

Я с радостью внедрил v2 из карт Google на свой сайт без проблем, я также успешно выполняю инструкции по проезду с помощью GDirections.load ().

Что мне нужно сделать, это остановить всплывающее окно мини-карты при выборе определенного шага в направлениях маршрутизации. Поэтому, когда пользователь нажимает, скажем, «шаг 3», вместо всплывающего окна по умолчанию, показывающего мини-карту, я бы хотел добавить в эту позицию пользовательский значок.

Надеюсь, это имеет смысл Заранее спасибо, ребята.

1 Ответ

2 голосов
/ 22 апреля 2010

Вам необходимо добавить обработчик для объекта GDirections для события addoverlay :

GEvent.addListener(gdir, "addoverlay", onGDirectionsAddOverlay);

Когда вызывается ваш обработчик onGDirectionsAddOverlay , вы можете перебирать новые маркеры и заменять их копиями, которые открывают ваше пользовательское информационное окно:

for (var i = 0; i <= gdir.getNumRoutes(); i++) 
{
    var originalMarker = gdir.getMarker(i);
    latLngs[i] = originalMarker.getLatLng();
    icons[i] = originalMarker.getIcon();
    newMarkers[i] = new GMarker(latLngs[i], { icon: icons[i], draggable: true, title: 'Kan flyttes' });
    map.addOverlay(newMarkers[i]);

    // add stuff to your newMarkers[i] click event...
    // ..

    // Now we can remove the original marker safely
    map.removeOverlay(originalMarker);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...