7

我使用了一些 JavaScript 在我的 Google 地图上获取路线,但由于某种原因,我不断被重定向到 Google 地图页面。

问题是当我主要尝试获取步行路线时,尽管公共交通选项也会发生这种情况。

这是一个在PhoneGap 中运行的应用程序,尽管我不确定这是PhoneGap 的问题。

以前有没有人见过这个问题,或者任何人都可以看到我的实施有问题吗?

    // get drections
directions: function (method) {

    // set directions method
    method = google.maps.DirectionsTravelMode.WALKING;
    if (method === 'public')
        method = google.maps.DirectionsTravelMode.TRANSIT;

    // current position
    var currentPos = new google.maps.LatLng(app.positionCords.latitude, app.positionCords.longitude);

    // set the directions options
    var request = {
        origin: currentPos,
        destination: app.venueCords,
        travelMode: method
    };

    // get the directions
    app.directionsService.route(request, function (response, status) {

        if (status == google.maps.DirectionsStatus.OK) {

            // set up directions on the map
            app.directionsDisplay.setMap(document.getElementById('map'));
            app.directionsDisplay.setPanel(document.getElementById('directionsPanel'));
            app.directionsDisplay.setDirections(response);

        } else {
            app.messageBox.alert(app.alertTitle, app.noDirectionsMsg, function(button) { console.warn('alert', [this, arguments]); });
        }

    });

}
4

1 回答 1

4

我无法完全理解,但您可能使用了错误的方法“app.directionDisplay.setMap”。

正如我已经完成了代码。

我无法找到您初始化MAP 的位置,然后您可以为 MAP 分配方向

      function initialize() {
        var mapOptions = {
          center: new google.maps.LatLng(-34.397, 150.644),//put your initial position values
          zoom: 8,
          mapTypeId: google.maps.MapTypeId.ROADMAP
        };
        var map = new google.maps.Map(document.getElementById("map"),
            mapOptions);
      }

然后使用不同的功能,您可以初始化路线/方向。

请参阅更多详细信息和示例GOOGLE 文档

我对你的代码有疑问

    // set up directions on the map
    app.directionsDisplay.setMap(document.getElementById('map'));

请纠正那个..

我希望这会做

于 2013-04-23T06:31:32.797 回答