这是我的代码
function calcRoute() {
marker.setMap(null);
var infowindow1 = '<div class="venue_map_infowindow"><a class="location" href="javascript:void(0);"><h3>My Position</h3></a></div>';
var infowindow2 = '<div class="venue_map_infowindow"><a class="location" href="javascript:void(0);"><h3>Your Position</h3></a></div>';;
var request = {
origin: myLatLng,
destination: venue_coords,
travelMode: google.maps.TravelMode.DRIVING,
};
directionsService.route(request, function(result, status) {
if (status == google.maps.DirectionsStatus.OK) {
directionsDisplay.setDirections(result);
}
else {
window.alert('Directions request failed due to ' + status);
}
});
directionsDisplay.setMap(map);
}
提前感谢您的帮助。
答案 0 :(得分:0)
您可以像这样分配infoWindow:
var directionsDisplay = new google.maps.DirectionsRenderer({
infoWindow: myInfoWindow,
map: map
});
您可以创建editableInfoWindow。 看这里。 http://googlemaps.googlermania.com/google_maps_api_v3/en/editable_infowindow.html
另一个答案是,只需禁用infoWindow:
var directionsDisplay = new google.maps.DirectionsRenderer({
suppressInfoWindows: true,
map: map
});
你可以解析directionResult,然后自己添加infoWindows。 阅读本页: http://googlemaps.googlermania.com/google_maps_api_v3/en/map_example_direction_customicon.html
答案 1 :(得分:0)
这对我有用:
directionsService.route(request, function(result, status) {
if (status == google.maps.DirectionsStatus.OK) {
result.routes[0].legs[0].start_address = window0;
result.routes[0].legs[0].end_address = window1;
directionsDisplay.setDirections(result);
}
else {
window.alert('Directions request failed due to ' + status);
}
});