我很高兴地将谷歌地图的v2实施到我的网站,我也成功地使用GDirections.load()执行行车路线。
当您在路线指示中选择特定步骤时,我需要做的是停止弹出迷你地图。因此,当用户点击说“步骤3”时,而不是显示迷你地图的默认弹出窗口,我想在该位置添加自定义图标。
希望它有意义 先谢谢你们。
答案 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);
}