私は Google Maps API v3 を使用しており、ユーザーが利用可能なすべてのルートを循環できる [次のルートを表示] ボタンを提供しようとしています。
最初のルートを表示したのですが、DirectionsRenderer クラスの routeIndex プロパティを使用すると、最初のルートしか返されません。
私は何か間違ったことをしていますか?以下に貼り付けたコード。私が使ってきたテストルートは全部で3ルートあります。routeIndex プロパティを 1 に設定しても、配列の最初のルート (基本的には routeIndex[0]) が表示されます。
function showDirections() {
// show contact buttons
$(".contact-route-button").css({display:"block"});
// add 1 to count
count++;
// If this function has been run before, clear the directions
if(count > 1){
// Clear map
directionsDisplay.setMap(null);
//Clear Route List
document.getElementById('directions').innerHTML = "";
}
// Set map to render directions
directionsDisplay = new google.maps.DirectionsRenderer({
map: map,
/*preserveViewport: true,*/
draggable: true,
routeIndex: 1
});
// Remove hidden class form text explaning driving directions
$('#drive-text').fadeIn("fast").removeClass('hidden');
// Hide paragraph under directions form
$(".section.grids-two.maximum-780.clearfix .grid.grid-2").fadeOut("fast");
// SlideToggle panel about random fact
$(".random-fact").slideDown("fast").css({display:"block"});
// Set Panel that will display driving directions
directionsDisplay.setPanel(document.getElementById('directions'));
// Get address input text
var address = document.getElementById('dir-address').value;
// Create request to send to Google starting at the address provided
var request = {
origin: address,
destination: '531 E Market Street Indianapolis, IN 46204',
travelMode: google.maps.TravelMode.DRIVING,
unitSystem: google.maps.UnitSystem.STANDARD,
provideRouteAlternatives: true
};
// Send request and display on map and directions box
directionsService.route(request, function(response, status) {
if (status === google.maps.DirectionsStatus.OK) {
directionsDisplay.setDirections(response);
totalRoutes = countRoutes(response);
}
});
}
何か案は?私がフォローしている手順は、Google Maps API ドキュメントhttps://developers.google.com/maps/documentation/javascript/reference#DirectionsRendererOptionsにあります。
前もって感謝します!!