1

这是代码:

var map = new google.maps.Map(document.getElementById("map_canvas"), $scope.map_options);
var dirService= new google.maps.DirectionsService();
var dirRenderer= new google.maps.DirectionsRenderer()
var dirContainer=document.getElementById('dir-container');


var showDirections = function(dirResult, dirStatus) {
                if (dirStatus != google.maps.DirectionsStatus.OK) {
                    alert('Directions failed: ' + dirStatus);
                    return;
              }
              // Show directions
            dirRenderer.setMap(map);
            dirRenderer.setDirections(dirResult);
            dirRenderer.setPanel(dirContainer);
        };

  dirService.route( {origin: '158 cours tolstoi, villeurbanne',
        destination: '8 cours andré philip, villeurbanne',
          travelMode: google.maps.DirectionsTravelMode.DRIVING,
          provideRouteAlternatives: true }
                 , showDirections);

我想捕捉在 dirContainer 中显示的路线之间选择另一条路线的事件。

替代路线显示在 dirContainer 中,并且因为 provideRouteAlternatives: true。

事件

google.maps.event.addListener(dirRenderer, 'directions_changed', 
                    function() { 
                alert('a');
            });

更改替代路线时不会触发。

提前谢谢。

4

2 回答 2

1

更新

来自v3 API 组中的这篇文章

没有事件。有一个功能请求将其添加到 API:

https://code.google.com/p/gmaps-api-issues/issues/detail?id=3565

应该有一个 routeIndex_changed 事件,但这似乎不起作用(并且没有记录)。routeindex_changed 确实有效,但我在文档中没有看到它。

http://www.geocodezip.com/v3_SO_simpleMap_directions_changed.html

于 2013-06-02T15:37:07.730 回答
0

这是事件:

google.maps.event.addListener(dirRenderer, 'routeindex_changed', 
                    function() { 
                alert(dirRenderer.getRouteIndex());
            });
于 2013-06-02T15:59:33.977 回答