覆盖方向谷歌地图上的大弹出窗口

时间:2010-04-21 14:10:56

标签: google-maps gdirections

我很高兴地将谷歌地图的v2实施到我的网站,我也成功地使用GDirections.load()执行行车路线。

当您在路线指示中选择特定步骤时,我需要做的是停止弹出迷你地图。因此,当用户点击说“步骤3”时,而不是显示迷你地图的默认弹出窗口,我想在该位置添加自定义图标。

希望它有意义 先谢谢你们。

1 个答案:

答案 0 :(得分:2)

您需要在 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);
}